wasm

edit

WPT coverage of the tests of wasm at the revision 5602b0f210e3. The tests link to their results in the browsers on wpt.fyi. The tentative tests (experimental features) and the reftests are listed separately from the stable tests.

GroupPassingTestsDisabledPass rate
Stable326342095%
Tentative1570021%
Reftests000–
All341412083%

Failure reasons

The tests that do not pass (failing or disabled), by kind of reason. A test with several reasons counts once per kind.

  • TEST BUG: 4
  • NOT IMPLEMENTED: 67

Stable tests

TestResultSubtestsKindDescription
core/address.wast.js.htmlPass373 / 373
core/align.wast.js.htmlPass336 / 336
core/annotations.wast.js.htmlPass160 / 160
core/binary-leb128.wast.js.htmlPass217 / 217
core/binary.wast.js.htmlPass280 / 280
core/block.wast.js.htmlPass397 / 397
core/br.wast.js.htmlPass136 / 136
core/br_if.wast.js.htmlPass162 / 162
core/br_on_non_null.wast.js.htmlPass21 / 21
core/br_on_null.wast.js.htmlPass19 / 19
core/br_table.wast.js.htmlPass226 / 226
core/bulk-memory/bulk.wast.js.htmlPass145 / 145
core/bulk-memory/memory_copy.wast.js.htmlPass4,582 / 4,582
core/bulk-memory/memory_fill.wast.js.htmlPass188 / 188
core/bulk-memory/memory_init.wast.js.htmlPass377 / 377
core/bulk-memory/table-sub.wast.js.htmlPass9 / 9
core/bulk-memory/table_copy.wast.js.htmlPass1,833 / 1,833
core/bulk-memory/table_fill.wast.js.htmlPass58 / 58
core/bulk-memory/table_init.wast.js.htmlPass942 / 942
core/call.wast.js.htmlPass143 / 143
core/call_indirect.wast.js.htmlPass350 / 350
core/call_ref.wast.js.htmlPass49 / 49
core/comments.wast.js.htmlPass20 / 20
core/const.wast.js.htmlPass2,560 / 2,560
core/conversions.wast.js.htmlPass2,355 / 2,355
core/custom.wast.js.htmlPass27 / 27
core/data.wast.js.htmlPass196 / 196
core/elem.wast.js.htmlPass369 / 369
core/endianness.wast.js.htmlPass121 / 121
core/exceptions/cast.wast.js.htmlPass9 / 9
core/exceptions/tag.wast.js.htmlPass26 / 26
core/exceptions/throw.wast.js.htmlPass26 / 26
core/exceptions/throw_ref.wast.js.htmlPass21 / 21
core/exceptions/try_table.wast.js.htmlPass115 / 115
core/exports.wast.js.htmlPass243 / 243
core/f32.wast.js.htmlPass10,031 / 10,031
core/f32_bitwise.wast.js.htmlPass1,451 / 1,451
core/f32_cmp.wast.js.htmlPass9,617 / 9,617
core/f64.wast.js.htmlPass10,031 / 10,031
core/f64_bitwise.wast.js.htmlPass1,451 / 1,451
core/f64_cmp.wast.js.htmlPass9,617 / 9,617
core/fac.wast.js.htmlPass12 / 12
core/float_exprs.wast.js.htmlPass3,471 / 3,471
core/float_literals.wast.js.htmlPass326 / 326
core/float_memory.wast.js.htmlPass194 / 194
core/float_misc.wast.js.htmlPass1,885 / 1,885
core/forward.wast.js.htmlPass9 / 9
core/func.wast.js.htmlPass344 / 344
core/func_ptrs.wast.js.htmlPass51 / 51
core/gc/array.wast.js.htmlPass100 / 100
core/gc/array_copy.wast.js.htmlPass43 / 43
core/gc/array_fill.wast.js.htmlPass37 / 37
core/gc/array_init_data.wast.js.htmlPass58 / 58
core/gc/array_init_elem.wast.js.htmlPass47 / 47
core/gc/array_new_data.wast.js.htmlPass44 / 44
core/gc/array_new_elem.wast.js.htmlPass36 / 36
core/gc/binary-gc.wast.js.htmlPass4 / 4
core/gc/br_on_cast.wast.js.htmlPass51 / 51
core/gc/br_on_cast_fail.wast.js.htmlPass51 / 51
core/gc/extern.wast.js.htmlPass22 / 22
core/gc/i31.wast.js.htmlPass88 / 88
core/gc/ref_cast.wast.js.htmlPass51 / 51
core/gc/ref_eq.wast.js.htmlPass99 / 99
core/gc/ref_test.wast.js.htmlPass77 / 77
core/gc/struct.wast.js.htmlPass67 / 67
core/gc/type-subtyping.wast.js.htmlPass293 / 293
core/global.wast.js.htmlPass226 / 226
core/i32.wast.js.htmlPass549 / 549
core/i64.wast.js.htmlPass451 / 451
core/id.wast.js.htmlPass17 / 17
core/if.wast.js.htmlPass361 / 361
core/imports.wast.js.htmlPass652 / 652
core/inline-module.wast.js.htmlPass4 / 4
core/instance.wast.js.htmlPass30 / 30
core/int_exprs.wast.js.htmlPass148 / 148
core/int_literals.wast.js.htmlPass75 / 75
core/labels.wast.js.htmlPass36 / 36
core/left-to-right.wast.js.htmlPass100 / 100
core/linking.wast.js.htmlPass360 / 360
core/load.wast.js.htmlPass160 / 160
core/local_get.wast.js.htmlPass74 / 74
core/local_init.wast.js.htmlPass20 / 20
core/local_set.wast.js.htmlPass102 / 102
core/local_tee.wast.js.htmlPass168 / 168
core/loop.wast.js.htmlPass215 / 215
core/memory.wast.js.htmlPass143 / 143
core/memory64/address64.wast.js.htmlPass342 / 342
core/memory64/align64.wast.js.htmlPass321 / 321
core/memory64/binary_leb128_64.wast.js.htmlPass7 / 7
core/memory64/bulk64.wast.js.htmlPass82 / 82
core/memory64/call_indirect64.wast.js.htmlPass6 / 6
core/memory64/endianness64.wast.js.htmlPass121 / 121
core/memory64/float_memory64.wast.js.htmlPass194 / 194
core/memory64/load64.wast.js.htmlPass162 / 162
core/memory64/memory64-imports.wast.js.htmlPass242 / 242
core/memory64/memory64.wast.js.htmlPass107 / 107
core/memory64/memory_copy64.wast.js.htmlPass4,582 / 4,582
core/memory64/memory_fill64.wast.js.htmlPass188 / 188
core/memory64/memory_grow64.wast.js.htmlFail64 / 66TEST BUGthe (either …) results of the wast (memory_grow64.wast:105 and :108) are converted to arrays ([-1n, 1n]) that assert_return of the JS harness compares with assert_equals, so these two assertions fail in every engine
core/memory64/memory_init64.wast.js.htmlPass377 / 377
core/memory64/memory_redundancy64.wast.js.htmlPass15 / 15
core/memory64/memory_trap64.wast.js.htmlPass322 / 322
core/memory64/table64.wast.js.htmlPass41 / 41
core/memory64/table_copy64.wast.js.htmlPass1,833 / 1,833
core/memory64/table_copy_mixed.wast.js.htmlPass11 / 11
core/memory64/table_fill64.wast.js.htmlPass93 / 93
core/memory64/table_get64.wast.js.htmlPass15 / 15
core/memory64/table_grow64.wast.js.htmlFail31 / 33TEST BUGthe (either …) results of the wast (table_grow64.wast:46 and :49) are converted to arrays ([-1n, 1n]) that assert_return of the JS harness compares with assert_equals, so these two assertions fail in every engine
core/memory64/table_init64.wast.js.htmlPass1,044 / 1,044
core/memory64/table_set64.wast.js.htmlPass23 / 23
core/memory64/table_size64.wast.js.htmlPass41 / 41
core/memory_grow.wast.js.htmlPass136 / 136
core/memory_redundancy.wast.js.htmlPass15 / 15
core/memory_size.wast.js.htmlPass54 / 54
core/memory_trap.wast.js.htmlPass344 / 344
core/multi-memory/address0.wast.js.htmlPass96 / 96
core/multi-memory/address1.wast.js.htmlPass131 / 131
core/multi-memory/align0.wast.js.htmlPass21 / 21
core/multi-memory/binary0.wast.js.htmlPass21 / 21
core/multi-memory/data0.wast.js.htmlPass23 / 23
core/multi-memory/data1.wast.js.htmlPass58 / 58
core/multi-memory/data_drop0.wast.js.htmlPass15 / 15
core/multi-memory/exports0.wast.js.htmlPass26 / 26
core/multi-memory/float_exprs0.wast.js.htmlPass57 / 57
core/multi-memory/float_exprs1.wast.js.htmlPass13 / 13
core/multi-memory/float_memory0.wast.js.htmlPass66 / 66
core/multi-memory/imports0.wast.js.htmlPass29 / 29
core/multi-memory/imports1.wast.js.htmlPass9 / 9
core/multi-memory/imports2.wast.js.htmlPass49 / 49
core/multi-memory/imports3.wast.js.htmlPass37 / 37
core/multi-memory/imports4.wast.js.htmlPass25 / 25
core/multi-memory/linking0.wast.js.htmlPass15 / 15
core/multi-memory/linking1.wast.js.htmlPass29 / 29
core/multi-memory/linking2.wast.js.htmlPass16 / 16
core/multi-memory/linking3.wast.js.htmlPass30 / 30
core/multi-memory/load0.wast.js.htmlPass7 / 7
core/multi-memory/load1.wast.js.htmlPass23 / 23
core/multi-memory/load2.wast.js.htmlPass42 / 42
core/multi-memory/memory-multi.wast.js.htmlPass12 / 12
core/multi-memory/memory_copy0.wast.js.htmlPass33 / 33
core/multi-memory/memory_copy1.wast.js.htmlPass18 / 18
core/multi-memory/memory_fill0.wast.js.htmlPass20 / 20
core/multi-memory/memory_grow.wast.js.htmlPass58 / 58
core/multi-memory/memory_init0.wast.js.htmlPass17 / 17
core/multi-memory/memory_size0.wast.js.htmlPass12 / 12
core/multi-memory/memory_size1.wast.js.htmlPass19 / 19
core/multi-memory/memory_size2.wast.js.htmlPass25 / 25
core/multi-memory/memory_size3.wast.js.htmlPass6 / 6
core/multi-memory/memory_size_import.wast.js.htmlPass12 / 12
core/multi-memory/memory_trap0.wast.js.htmlPass18 / 18
core/multi-memory/memory_trap1.wast.js.htmlPass328 / 328
core/multi-memory/start0.wast.js.htmlPass13 / 13
core/multi-memory/store0.wast.js.htmlPass9 / 9
core/multi-memory/store1.wast.js.htmlPass19 / 19
core/multi-memory/store2.wast.js.htmlPass30 / 30
core/multi-memory/traps0.wast.js.htmlPass19 / 19
core/names.wast.js.htmlPass496 / 496
core/nop.wast.js.htmlPass96 / 96
core/obsolete-keywords.wast.js.htmlPass24 / 24
core/ref.wast.js.htmlPass29 / 29
core/ref_as_non_null.wast.js.htmlPass14 / 14
core/ref_func.wast.js.htmlPass27 / 27
core/ref_is_null.wast.js.htmlPass30 / 30
core/ref_null.wast.js.htmlPass61 / 61
core/relaxed-simd/i16x8_relaxed_q15mulr_s.wast.js.htmlPass13 / 13
core/relaxed-simd/i32x4_relaxed_trunc.wast.js.htmlPass5 / 5
core/relaxed-simd/i8x16_relaxed_swizzle.wast.js.htmlPass25 / 25
core/relaxed-simd/relaxed_dot_product.wast.js.htmlPass49 / 49
core/relaxed-simd/relaxed_laneselect.wast.js.htmlPass49 / 49
core/relaxed-simd/relaxed_madd_nmadd.wast.js.htmlPass80 / 80
core/relaxed-simd/relaxed_min_max.wast.js.htmlPass101 / 101
core/return.wast.js.htmlPass123 / 123
core/return_call.wast.js.htmlPass97 / 97
core/return_call_indirect.wast.js.htmlPass145 / 145
core/return_call_ref.wast.js.htmlPass96 / 96
core/select.wast.js.htmlPass303 / 303
core/simd/simd_address.wast.js.htmlPass175 / 175
core/simd/simd_align.wast.js.htmlPass264 / 264
core/simd/simd_bit_shift.wast.js.htmlPass858 / 858
core/simd/simd_bitwise.wast.js.htmlPass581 / 581
core/simd/simd_boolean.wast.js.htmlPass1,076 / 1,076
core/simd/simd_const.wast.js.htmlPass2,354 / 2,354
core/simd/simd_conversions.wast.js.htmlPass1,032 / 1,032
core/simd/simd_f32x4.wast.js.htmlPass3,128 / 3,128
core/simd/simd_f32x4_arith.wast.js.htmlPass7,255 / 7,255
core/simd/simd_f32x4_cmp.wast.js.htmlPass10,341 / 10,341
core/simd/simd_f32x4_pmin_pmax.wast.js.htmlPass15,521 / 15,521
core/simd/simd_f32x4_rounding.wast.js.htmlPass757 / 757
core/simd/simd_f64x2.wast.js.htmlPass3,196 / 3,196
core/simd/simd_f64x2_arith.wast.js.htmlPass7,267 / 7,267
core/simd/simd_f64x2_cmp.wast.js.htmlPass10,653 / 10,653
core/simd/simd_f64x2_pmin_pmax.wast.js.htmlPass15,521 / 15,521
core/simd/simd_f64x2_rounding.wast.js.htmlPass757 / 757
core/simd/simd_i16x8_arith.wast.js.htmlPass754 / 754
core/simd/simd_i16x8_arith2.wast.js.htmlPass650 / 650
core/simd/simd_i16x8_cmp.wast.js.htmlPass1,761 / 1,761
core/simd/simd_i16x8_extadd_pairwise_i8x16.wast.js.htmlPass77 / 77
core/simd/simd_i16x8_extmul_i8x16.wast.js.htmlPass445 / 445
core/simd/simd_i16x8_q15mulr_sat_s.wast.js.htmlPass115 / 115
core/simd/simd_i16x8_sat_arith.wast.js.htmlPass856 / 856
core/simd/simd_i32x4_arith.wast.js.htmlPass754 / 754
core/simd/simd_i32x4_arith2.wast.js.htmlPass544 / 544
core/simd/simd_i32x4_cmp.wast.js.htmlPass1,781 / 1,781
core/simd/simd_i32x4_dot_i16x8.wast.js.htmlPass123 / 123
core/simd/simd_i32x4_extadd_pairwise_i16x8.wast.js.htmlPass77 / 77
core/simd/simd_i32x4_extmul_i16x8.wast.js.htmlPass445 / 445
core/simd/simd_i32x4_trunc_sat_f32x4.wast.js.htmlPass421 / 421
core/simd/simd_i32x4_trunc_sat_f64x2.wast.js.htmlPass421 / 421
core/simd/simd_i64x2_arith.wast.js.htmlPass778 / 778
core/simd/simd_i64x2_arith2.wast.js.htmlPass96 / 96
core/simd/simd_i64x2_cmp.wast.js.htmlPass433 / 433
core/simd/simd_i64x2_extmul_i32x4.wast.js.htmlPass445 / 445
core/simd/simd_i8x16_arith.wast.js.htmlPass508 / 508
core/simd/simd_i8x16_arith2.wast.js.htmlPass794 / 794
core/simd/simd_i8x16_cmp.wast.js.htmlPass1,681 / 1,681
core/simd/simd_i8x16_sat_arith.wast.js.htmlPass808 / 808
core/simd/simd_int_to_int_extend.wast.js.htmlPass965 / 965
core/simd/simd_lane.wast.js.htmlPass1,512 / 1,512
core/simd/simd_linking.wast.js.htmlPass8 / 8
core/simd/simd_load.wast.js.htmlPass122 / 122
core/simd/simd_load16_lane.wast.js.htmlPass139 / 139
core/simd/simd_load32_lane.wast.js.htmlPass91 / 91
core/simd/simd_load64_lane.wast.js.htmlPass59 / 59
core/simd/simd_load8_lane.wast.js.htmlPass203 / 203
core/simd/simd_load_extend.wast.js.htmlPass362 / 362
core/simd/simd_load_splat.wast.js.htmlPass468 / 468
core/simd/simd_load_zero.wast.js.htmlPass130 / 130
core/simd/simd_memory-multi.wast.js.htmlPass5 / 5
core/simd/simd_select.wast.js.htmlPass29 / 29
core/simd/simd_splat.wast.js.htmlPass656 / 656
core/simd/simd_store.wast.js.htmlPass67 / 67
core/simd/simd_store16_lane.wast.js.htmlPass139 / 139
core/simd/simd_store32_lane.wast.js.htmlPass91 / 91
core/simd/simd_store64_lane.wast.js.htmlPass59 / 59
core/simd/simd_store8_lane.wast.js.htmlPass203 / 203
core/skip-stack-guard-page.wast.js.htmlPass15 / 15
core/stack.wast.js.htmlPass13 / 13
core/start.wast.js.htmlPass39 / 39
core/store.wast.js.htmlPass130 / 130
core/switch.wast.js.htmlPass33 / 33
core/table.wast.js.htmlPass104 / 104
core/table_get.wast.js.htmlPass25 / 25
core/table_grow.wast.js.htmlPass86 / 86
core/table_set.wast.js.htmlPass37 / 37
core/table_size.wast.js.htmlPass45 / 45
core/token.wast.js.htmlPass159 / 159
core/traps.wast.js.htmlPass70 / 70
core/type-canon.wast.js.htmlPass8 / 8
core/type-equivalence.wast.js.htmlPass71 / 71
core/type-rec.wast.js.htmlPass66 / 66
core/type.wast.js.htmlPass9 / 9
core/unreachable.wast.js.htmlPass86 / 86
core/unreached-invalid.wast.js.htmlPass244 / 244
core/unreached-valid.wast.js.htmlPass21 / 21
core/unwind.wast.js.htmlPass54 / 54
core/utf8-custom-section-id.wast.js.htmlPass354 / 354
core/utf8-import-field.wast.js.htmlPass354 / 354
core/utf8-import-module.wast.js.htmlPass354 / 354
core/utf8-invalid-encoding.wast.js.htmlPass371 / 371
create_multiple_memory.worker.jsPass1 / 1
jsapi/constructor/compile.any.jsPass18 / 18
jsapi/constructor/instantiate-bad-imports.any.jsPass424 / 424
jsapi/constructor/instantiate.any.jsPass114 / 114
jsapi/constructor/multi-value.any.jsPass6 / 6
jsapi/constructor/toStringTag.any.jsPass8 / 8
jsapi/constructor/validate.any.jsPass124 / 124
jsapi/functions/entry-different-function-realm.htmlPass1 / 1
jsapi/functions/entry.htmlPass2 / 2
jsapi/functions/incumbent.htmlPass2 / 2
jsapi/global/constructor.any.jsPass120 / 120
jsapi/global/toString.any.jsPass4 / 4
jsapi/global/value-get-set.any.jsPass136 / 136
jsapi/global/valueOf.any.jsPass4 / 4
jsapi/idlharness.any.jsFail178 / 182TEST BUGthe IDL of the test (interfaces/wasm-js-api.idl) declares Module without a parent, but the source phase imports make WebAssembly.Module extend %AbstractModuleSource% (https://webassembly.github.io/esm-integration/js-api/index.html#webassembly-module-objects, tested by wasm/jsapi/module/moduleSource.tentative.any.js): the prototypes of the interface object and of the interface prototype object are not Function.prototype and Object.prototype
jsapi/instance/constructor-bad-imports.any.jsPass212 / 212
jsapi/instance/constructor-caching.any.jsPass2 / 2
jsapi/instance/constructor.any.jsPass58 / 58
jsapi/instance/exports.any.jsPass8 / 8
jsapi/instance/toString.any.jsPass4 / 4
jsapi/interface.any.jsPass144 / 144
jsapi/js-string/basic.any.jsError0 / 0NOT IMPLEMENTEDthe JS String Builtins (the builtins and importedStringConstants compile options)
jsapi/js-string/constants.any.jsFail0 / 80NOT IMPLEMENTEDthe JS String Builtins (the builtins and importedStringConstants compile options)
jsapi/js-string/imports.any.jsFail0 / 2NOT IMPLEMENTEDthe JS String Builtins (the builtins and importedStringConstants compile options)
jsapi/jspi/js-promise-integration.any.jsFail2 / 26NOT IMPLEMENTEDJavaScript Promise Integration (WebAssembly.Suspending, WebAssembly.promising)
jsapi/jspi/notraps.any.jsFail0 / 6NOT IMPLEMENTEDJavaScript Promise Integration (WebAssembly.Suspending, WebAssembly.promising)
jsapi/jspi/rejects.any.jsFail0 / 10NOT IMPLEMENTEDJavaScript Promise Integration (WebAssembly.Suspending, WebAssembly.promising)
jsapi/memory/buffer.any.jsPass8 / 8
jsapi/memory/constructor.any.jsPass48 / 48
jsapi/memory/grow.any.jsFail36 / 38NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
jsapi/memory/to-fixed-length-buffer-shared.any.jsFail0 / 2NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
jsapi/memory/to-fixed-length-buffer.any.jsFail2 / 4NOT IMPLEMENTEDthe resizable buffers of the memories (toResizableBuffer()): the ArrayBuffer of the script engine adapters cannot share the bytes of a memory when it is resized
jsapi/memory/to-resizable-buffer-shared.any.jsFail0 / 6NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable; the resizable buffers of the memories (toResizableBuffer()): the ArrayBuffer of the script engine adapters cannot share the bytes of a memory when it is resized
jsapi/memory/to-resizable-buffer.any.jsFail2 / 10NOT IMPLEMENTEDthe resizable buffers of the memories (toResizableBuffer()): the ArrayBuffer of the script engine adapters cannot share the bytes of a memory when it is resized
jsapi/memory/toString.any.jsPass4 / 4
jsapi/module/constructor.any.jsPass20 / 20
jsapi/module/customSections.any.jsPass22 / 22
jsapi/module/exports.any.jsPass22 / 22
jsapi/module/imports.any.jsPass22 / 22
jsapi/module/toString.any.jsPass4 / 4
jsapi/proto-from-ctor-realm.htmlPass120 / 120
jsapi/prototypes.any.jsPass10 / 10
jsapi/table/constructor.any.jsPass64 / 64
jsapi/table/get-set.any.jsPass64 / 64
jsapi/table/grow.any.jsPass36 / 36
jsapi/table/length.any.jsPass8 / 8
jsapi/table/toString.any.jsPass4 / 4
serialization/arraybuffer/transfer.window.jsPass2 / 2
serialization/module/broadcastchannel-success-and-failure.htmlPass1 / 1
serialization/module/broadcastchannel-success.htmlPass1 / 1
serialization/module/cross-origin-module-sharing-fails.htmlTimeout0 / 2NOT IMPLEMENTEDorigin-keyed agent clusters by default: the same-site cross-origin iframe is in the agent cluster of the page (the agent clusters are keyed by site), so it receives the module
serialization/module/identity-not-preserved.htmlPass3 / 3
serialization/module/nested-worker-success.any.jsPass2 / 2
serialization/module/no-transferring.htmlPass3 / 3
serialization/module/serialization-via-history.htmlPass4 / 4
serialization/module/serialization-via-idb.any.jsPass4 / 4
serialization/module/serialization-via-notifications-api.any.jsPass4 / 4
serialization/module/share-module-cross-origin-fails.sub.htmlTimeout0 / 1NOT IMPLEMENTEDorigin-keyed agent clusters by default: the same-site cross-origin iframe is in the agent cluster of the page (the agent clusters are keyed by site), so it receives the module
serialization/module/window-cross-origin-isolated.https.sub.htmlPass3 / 3
serialization/module/window-cross-site-failure.htmlPass3 / 3
serialization/module/window-domain-success.sub.htmlPass1 / 1
serialization/module/window-messagechannel-success.htmlPass1 / 1
serialization/module/window-same-site-success.sub.htmlPass2 / 2
serialization/module/window-serviceworker-failure.https.htmlPass1 / 1
serialization/module/window-sharedworker-failure.htmlPass1 / 1
serialization/module/window-similar-but-cross-origin-success.sub.htmlPass1 / 1
serialization/module/window-simple-success.htmlPass4 / 4
webapi/abort.any.jsPass12 / 12
webapi/body.any.jsPass12 / 12
webapi/contenttype.any.jsPass66 / 66
webapi/empty-body.any.jsPass24 / 24
webapi/historical.any.jsPass3 / 3
webapi/idlharness.any.jsPass24 / 24
webapi/instantiateStreaming-bad-imports.any.jsPass318 / 318
webapi/instantiateStreaming.any.jsPass75 / 75
webapi/invalid-args.any.jsPass132 / 132
webapi/invalid-code.any.jsPass12 / 12
webapi/modified-contenttype.any.jsPass12 / 12
webapi/origin.sub.any.jsPass12 / 12
webapi/rejected-arg.any.jsPass6 / 6
webapi/status.any.jsPass48 / 48
webapi/wasm_stream_compile_test.any.jsPass26 / 26
webapi/wasm_stream_instantiate_test.any.jsPass26 / 26

Tentative tests

TestResultSubtestsKindDescription
jsapi/esm-integration/exports.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/global-exports-live-bindings.tentative.any.jsFail0 / 4NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/global-exports.tentative.any.jsFail0 / 10NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/js-wasm-cycle.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/mutable-global-sharing.tentative.any.jsFail0 / 10NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/namespace-instance.tentative.any.jsFail2 / 6NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/reserved-import-names.tentative.any.jsFail0 / 10NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/resolve-export.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/source-phase-string-builtins.tentative.any.jsFail0 / 6NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/source-phase-string-constants.tentative.any.jsFail0 / 6NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/source-phase.tentative.any.jsFail0 / 4NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/string-builtins.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/string-constants.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/v128-tdz.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/esm-integration/wasm-import-wasm-export.tentative.any.jsFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
jsapi/exception/basic.tentative.any.jsFail9 / 15NOT IMPLEMENTEDthe legacy exception handling instructions (try, catch, rethrow): Wasmtime only supports the exception references (try_table, throw_ref)
jsapi/exception/constructor.tentative.any.jsPass12 / 12
jsapi/exception/getArg.tentative.any.jsFail8 / 10TEST BUGexpects a RangeError for the indices that are not finite or out of the range of unsigned long, while getArg() converts the index with [EnforceRange] unsigned long (a TypeError)
jsapi/exception/identity.tentative.any.jsError2 / 2NOT IMPLEMENTEDthe legacy exception handling instructions (try, catch, rethrow): Wasmtime only supports the exception references (try_table, throw_ref)
jsapi/exception/is.tentative.any.jsPass6 / 6
jsapi/exception/toString.tentative.any.jsPass4 / 4
jsapi/function/call.tentative.any.jsFail0 / 4NOT IMPLEMENTEDWebAssembly.Function (the type reflection of WebAssembly)
jsapi/function/constructor.tentative.any.jsFail0 / 22NOT IMPLEMENTEDWebAssembly.Function (the type reflection of WebAssembly)
jsapi/function/table.tentative.any.jsFail0 / 2NOT IMPLEMENTEDWebAssembly.Function (the type reflection of WebAssembly)
jsapi/function/type.tentative.any.jsFail0 / 4NOT IMPLEMENTEDWebAssembly.Function (the type reflection of WebAssembly)
jsapi/gc/casts.tentative.any.jsPass22 / 22
jsapi/gc/exported-object.tentative.any.jsPass38 / 38
jsapi/gc/i31.tentative.any.jsPass12 / 12
jsapi/global/type.tentative.any.jsFail0 / 26NOT IMPLEMENTEDthe type reflection of WebAssembly (type(), the minimum member of the descriptors)
jsapi/memory/constructor-shared.tentative.any.jsFail4 / 6NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
jsapi/memory/constructor-types.tentative.any.jsFail0 / 6NOT IMPLEMENTEDthe type reflection of WebAssembly (type(), the minimum member of the descriptors)
jsapi/memory/type.tentative.any.jsFail0 / 12NOT IMPLEMENTEDthe type reflection of WebAssembly (type(), the minimum member of the descriptors)
jsapi/module/moduleSource.tentative.any.jsPass8 / 8
jsapi/table/constructor-types.tentative.any.jsFail0 / 6NOT IMPLEMENTEDthe type reflection of WebAssembly (type(), the minimum member of the descriptors)
jsapi/table/type.tentative.any.jsFail0 / 8NOT IMPLEMENTEDthe type reflection of WebAssembly (type(), the minimum member of the descriptors)
jsapi/tag/constructor.tentative.any.jsPass12 / 12
jsapi/tag/toString.tentative.any.jsPass4 / 4
jsapi/tag/type.tentative.any.jsFail0 / 6NOT IMPLEMENTEDthe type reflection of WebAssembly (type(), the minimum member of the descriptors)
proposals/wide-arithmetic/core/wide-arithmetic.wast.js.tentative.htmlPass123 / 123
serialization/memory/clone-error.tentative.https.any.jsPass16 / 16
serialization/memory/messageport-via-sharedworker-success.tentative.https.htmlFail0 / 1NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
serialization/memory/no-transferring.tentative.htmlPass6 / 6
serialization/memory/window-nested-dedicated-worker-failure.tentative.https.htmlFail0 / 1NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
serialization/memory/window-sharedworker-failure.tentative.https.htmlFail1 / 3NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
serialization/memory/window-success.tentative.https.htmlFail0 / 3NOT IMPLEMENTEDthe threads of WebAssembly: a shared WebAssembly.Memory is only a growable SharedArrayBuffer (the shared memories of Wasmtime are not .NET arrays), which is not serializable
webapi/esm-integration/execute-start.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/exported-names.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/invalid-bytecode.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/js-wasm-cycle-errors.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/js-wasm-cycle.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/module-parse-error.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/resolve-export.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/reuse-wasm-loaded-as-classic-script.tentative.htmlTimeout0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/script-src-allows-source-phase-wasm.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/script-src-allows-wasm.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/script-src-blocks-wasm.tentative.sub.htmlPass1 / 1
webapi/esm-integration/scripting-disabled.tentative.htmlPass1 / 1
webapi/esm-integration/source-phase-blocked-by-csp.tentative.htmlPass1 / 1
webapi/esm-integration/source-phase-import-non-UTF8.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/source-phase-js-string.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/source-phase-preload.tentative.htmlFail0 / 2NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/source-phase.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/wasm-import-wasm-export.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/wasm-import.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/wasm-js-cycle.tentative.htmlTimeout0 / 0NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/wasm-to-wasm-link-error.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/worker-import-source-phase.tentative.htmlTimeout0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/worker-import.tentative.htmlTimeout0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/worker.tentative.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)
webapi/esm-integration/worklet-import-source-phase.tentative.https.htmlFail0 / 1NOT IMPLEMENTEDthe ESM integration of WebAssembly (importing a WebAssembly module, the source phase imports)