Skip to content

Commit

Permalink
[JSC] Update wpt/wasm
Browse files Browse the repository at this point in the history
https://bugs.webkit.org/show_bug.cgi?id=278203
rdar://133998295

Reviewed by Mark Lam.

Import latest wpt/wasm tests.

* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/assertions.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/bad-imports.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/compile.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/instantiate-bad-imports.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/instantiate.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/multi-value.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/toStringTag.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/constructor/validate.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/basic.tentative.any.js:
(promise_test.async const):
(promise_test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/getArg.tentative.any-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.worker-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/identity.tentative.any-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/identity.tentative.any.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/identity.tentative.any.js: Added.
(test.const.imports.module.jsfunc):
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/identity.tentative.any.worker-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/identity.tentative.any.worker.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/is.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/toString.tentative.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/w3c-import.log:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/function/call.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/function/constructor.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/function/table.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/function/type.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/casts.tentative.any.html:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/casts.tentative.any.worker-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/casts.tentative.any.worker.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/exported-object.tentative.any.html:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/exported-object.tentative.any.worker-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/exported-object.tentative.any.worker.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/global-import.tentative.any.html:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/i31.tentative.any.html:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/i31.tentative.any.worker-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/i31.tentative.any.worker.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/gc/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/w3c-import.log.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/constructor.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/toString.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/type.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/value-get-set.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/global/valueOf.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/instance/constructor-bad-imports.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/instance/constructor-caching.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/instance/constructor.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/instance/exports.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/instance/toString.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/instanceTestFactory.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/interface.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/memory/constructor-shared.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/memory/constructor-types.tentative.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/memory/constructor.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/memory/grow.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/memory/type.tentative.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/constructor.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/customSections.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/exports.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/imports.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/moduleSource.tentative.any-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/moduleSource.tentative.any.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/moduleSource.tentative.any.js: Added.
(setup):
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/moduleSource.tentative.any.worker-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/moduleSource.tentative.any.worker.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/toString.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/module/w3c-import.log:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/prototypes.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor-types.tentative.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/constructor.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/get-set.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/grow.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/length.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/toString.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/table/type.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/tag/constructor.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/tag/toString.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/tag/type.tentative.any.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/wasm-module-builder.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/resources/w3c-import.log:
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/resources/worker-source-phase.js: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/resources/worker.js:
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/script-src-allows-wasm.tentative-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/script-src-allows-wasm.tentative.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/script-src-blocks-wasm.tentative.sub-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/script-src-blocks-wasm.tentative.sub.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/source-phase.tentative-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/source-phase.tentative.html: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/w3c-import.log:
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/worker-import-source-phase.tentative-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/worker-import-source-phase.tentative.html: Added.

Canonical link: https://commits.webkit.org/282330@main
  • Loading branch information
Constellation committed Aug 16, 2024
1 parent e3d6b9e commit 3137d42
Show file tree
Hide file tree
Showing 88 changed files with 396 additions and 72 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ function assert_function_name(fn, name, description) {
assert_true(propdesc.configurable, "configurable", `${description} name should be configurable`);
assert_equals(propdesc.value, name, `${description} name should be ${name}`);
}
globalThis.assert_function_name = assert_function_name;

function assert_function_length(fn, length, description) {
const propdesc = Object.getOwnPropertyDescriptor(fn, "length");
Expand All @@ -15,6 +16,7 @@ function assert_function_length(fn, length, description) {
assert_true(propdesc.configurable, "configurable", `${description} length should be configurable`);
assert_equals(propdesc.value, length, `${description} length should be ${length}`);
}
globalThis.assert_function_length = assert_function_length;

function assert_exported_function(fn, { name, length }, description) {
if (WebAssembly.Function === undefined) {
Expand All @@ -28,6 +30,7 @@ function assert_exported_function(fn, { name, length }, description) {
assert_function_name(fn, name, description);
assert_function_length(fn, length, description);
}
globalThis.assert_exported_function = assert_exported_function;

function assert_Instance(instance, expected_exports) {
assert_equals(Object.getPrototypeOf(instance), WebAssembly.Instance.prototype,
Expand Down Expand Up @@ -77,6 +80,7 @@ function assert_Instance(instance, expected_exports) {
}
}
}
globalThis.assert_Instance = assert_Instance;

function assert_WebAssemblyInstantiatedSource(actual, expected_exports={}) {
assert_equals(Object.getPrototypeOf(actual), Object.prototype,
Expand All @@ -98,3 +102,4 @@ function assert_WebAssemblyInstantiatedSource(actual, expected_exports={}) {
assert_true(instance.configurable, "instance: configurable");
assert_Instance(instance.value, expected_exports);
}
globalThis.assert_WebAssemblyInstantiatedSource = assert_WebAssemblyInstantiatedSource;
Original file line number Diff line number Diff line change
Expand Up @@ -183,3 +183,4 @@ function test_bad_imports(t) {
});
}
}
globalThis.test_bad_imports = test_bad_imports;
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/wasm-module-builder.js

function assert_Module(module) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/wasm-module-builder.js
// META: script=/wasm/jsapi/bad-imports.js

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/wasm-module-builder.js
// META: script=/wasm/jsapi/assertions.js
// META: script=/wasm/jsapi/instanceTestFactory.js
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/wasm-module-builder.js
// META: script=/wasm/jsapi/assertions.js

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm

"use strict";
// https://webidl.spec.whatwg.org/#es-namespaces
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/wasm-module-builder.js

let emptyModuleBinary;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,worker,jsshell
// META: global=window,worker,jsshell,shadowrealm
// META: script=/wasm/jsapi/wasm-module-builder.js

function assert_throws_wasm(fn, message) {
Expand All @@ -13,11 +13,11 @@ function assert_throws_wasm(fn, message) {
promise_test(async () => {
const kSig_v_r = makeSig([kWasmExternRef], []);
const builder = new WasmModuleBuilder();
const except = builder.addTag(kSig_v_r);
const tagIndex = builder.addTag(kSig_v_r);
builder.addFunction("throw_param", kSig_v_r)
.addBody([
kExprLocalGet, 0,
kExprThrow, except,
kExprThrow, tagIndex,
])
.exportFunc();
const buffer = builder.toBuffer();
Expand All @@ -44,11 +44,11 @@ promise_test(async () => {

promise_test(async () => {
const builder = new WasmModuleBuilder();
const except = builder.addTag(kSig_v_a);
const tagIndex = builder.addTag(kSig_v_a);
builder.addFunction("throw_null", kSig_v_v)
.addBody([
kExprRefNull, kAnyFuncCode,
kExprThrow, except,
kExprThrow, tagIndex,
])
.exportFunc();
const buffer = builder.toBuffer();
Expand All @@ -58,11 +58,11 @@ promise_test(async () => {

promise_test(async () => {
const builder = new WasmModuleBuilder();
const except = builder.addTag(kSig_v_i);
const tagIndex = builder.addTag(kSig_v_i);
builder.addFunction("throw_int", kSig_v_v)
.addBody([
...wasmI32Const(7),
kExprThrow, except,
kExprThrow, tagIndex,
])
.exportFunc();
const buffer = builder.toBuffer();
Expand All @@ -73,12 +73,12 @@ promise_test(async () => {
promise_test(async () => {
const builder = new WasmModuleBuilder();
const fnIndex = builder.addImport("module", "fn", kSig_v_v);
const except = builder.addTag(kSig_v_r);
const tagIndex= builder.addTag(kSig_v_r);
builder.addFunction("catch_exception", kSig_r_v)
.addBody([
kExprTry, kWasmStmt,
kExprCallFunction, fnIndex,
kExprCatch, except,
kExprCatch, tagIndex,
kExprReturn,
kExprEnd,
kExprRefNull, kExternRefCode,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/assertions.js

test(() => {
Expand All @@ -18,8 +18,8 @@ test(() => {
}, "No arguments");

test(() => {
const argument = new WebAssembly.Tag({ parameters: [] });
assert_throws_js(TypeError, () => WebAssembly.Exception(argument));
const tag = new WebAssembly.Tag({ parameters: [] });
assert_throws_js(TypeError, () => WebAssembly.Exception(tag));
}, "Calling");

test(() => {
Expand Down Expand Up @@ -53,10 +53,10 @@ test(() => {
["i64", undefined],
];
for (const typeAndArg of typesAndArgs) {
const exn = new WebAssembly.Tag({ parameters: [typeAndArg[0]] });
const tag = new WebAssembly.Tag({ parameters: [typeAndArg[0]] });
assert_throws_js(
TypeError,
() => new WebAssembly.Exception(exn, typeAndArg[1])
() => new WebAssembly.Exception(tag, typeAndArg[1])
);
}
}, "Invalid exception argument");
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
PASS Missing arguments
PASS Invalid exception argument
PASS Index out of bounds
PASS Getting out-of-range argument
FAIL Getting out-of-range argument assert_throws_js: function "() => exn.getArg(tag, value)" threw object "TypeError: Expect an integer argument in the range: [0, 2^32 - 1]" ("TypeError") expected instance of function "function RangeError() {
[native code]
}" ("RangeError")
PASS getArg

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/memory/assertions.js

test(() => {
Expand Down Expand Up @@ -43,7 +43,7 @@ test(() => {
const tag = new WebAssembly.Tag({ parameters: [] });
const exn = new WebAssembly.Exception(tag, []);
for (const value of outOfRangeValues) {
assert_throws_js(TypeError, () => exn.getArg(tag, value));
assert_throws_js(RangeError, () => exn.getArg(tag, value));
}
}, "Getting out-of-range argument");

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
PASS Missing arguments
PASS Invalid exception argument
PASS Index out of bounds
PASS Getting out-of-range argument
FAIL Getting out-of-range argument assert_throws_js: function "() => exn.getArg(tag, value)" threw object "TypeError: Expect an integer argument in the range: [0, 2^32 - 1]" ("TypeError") expected instance of function "function RangeError() {
[native code]
}" ("RangeError")
PASS getArg

Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@

PASS Identity check

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/assertions.js
// META: script=/wasm/jsapi/wasm-module-builder.js

test(() => {
const tag = new WebAssembly.Tag({ parameters: ["i32"] });
const exn = new WebAssembly.Exception(tag, [42]);
const exn_same_payload = new WebAssembly.Exception(tag, [42]);
const exn_diff_payload = new WebAssembly.Exception(tag, [53]);

const builder = new WasmModuleBuilder();
const jsfuncIndex = builder.addImport("module", "jsfunc", kSig_v_v);
const tagIndex = builder.addImportedTag("module", "tag", kSig_v_i);
const imports = {
module: {
jsfunc: function() { throw exn; },
tag: tag
}
};

builder
.addFunction("catch_rethrow", kSig_v_v)
.addBody([
kExprTry, kWasmStmt,
kExprCallFunction, jsfuncIndex,
kExprCatch, tagIndex,
kExprDrop,
kExprRethrow, 0x00,
kExprEnd
])
.exportFunc();

builder
.addFunction("catch_all_rethrow", kSig_v_v)
.addBody([
kExprTry, kWasmStmt,
kExprCallFunction, jsfuncIndex,
kExprCatchAll,
kExprRethrow, 0x00,
kExprEnd
])
.exportFunc();

const buffer = builder.toBuffer();
WebAssembly.instantiate(buffer, imports).then(result => {
try {
result.instance.exports.catch_rethrow();
} catch (e) {
assert_equals(e, exn);
assert_not_equals(e, exn_same_payload);
assert_not_equals(e, exn_diff_payload);
}
try {
result.instance.exports.catch_all_rethrow();
} catch (e) {
assert_equals(e, exn);
assert_not_equals(e, exn_same_payload);
assert_not_equals(e, exn_diff_payload);
}
});
}, "Identity check");
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@

PASS Identity check

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/memory/assertions.js

test(() => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm

test(() => {
const argument = { parameters: [] };
const tag = new WebAssembly.Tag(argument);
const exception = new WebAssembly.Exception(tag, []);
assert_class_string(exception, "WebAssembly.Exception");
const exn = new WebAssembly.Exception(tag, []);
assert_class_string(exn, "WebAssembly.Exception");
}, "Object.prototype.toString on an Exception");

test(() => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ List of files:
/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/basic.tentative.any.js
/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/constructor.tentative.any.js
/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/getArg.tentative.any.js
/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/identity.tentative.any.js
/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/is.tentative.any.js
/LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/exception/toString.tentative.any.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/assertions.js

function addxy(x, y) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/assertions.js

function addxy(x, y) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/assertions.js

function testfunc(n) {}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// META: global=window,dedicatedworker,jsshell
// META: global=window,dedicatedworker,jsshell,shadowrealm
// META: script=/wasm/jsapi/assertions.js

function addNumbers(x, y, z) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
<!-- webkit-test-runner [ jscOptions=--useWasmTypedFunctionReferences=true,--useWasmGC=true ] -->
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@

PASS anyref casts
PASS eqref casts
PASS structref casts
PASS arrayref casts
PASS i31ref casts
PASS funcref casts
PASS externref casts
PASS null casts
PASS concrete struct casts
PASS concrete array casts
PASS concrete func casts

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
<!-- webkit-test-runner [ jscOptions=--useWasmTypedFunctionReferences=true,--useWasmGC=true ] -->
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@

PASS property access
PASS property assignment (strict mode)
PASS property assignment (non-strict mode)
PASS ownPropertyNames
PASS defineProperty
PASS delete (strict mode)
PASS delete (non-strict mode)
PASS getPrototypeOf
PASS setPrototypeOf
PASS isExtensible
PASS preventExtensions
PASS sealing
PASS typeof
PASS toString
PASS valueOf
PASS GC objects as map keys
PASS GC objects as set element
PASS GC objects as weak map keys
PASS GC objects as weak set element

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
<!-- webkit-test-runner [ jscOptions=--useWasmTypedFunctionReferences=true,--useWasmGC=true ] -->
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
<!-- webkit-test-runner [ jscOptions=--useWasmTypedFunctionReferences=true,--useWasmGC=true,--useWasmExtendedConstantExpressions=true ] -->
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@

PASS i31ref conversion to Number
PASS Number conversion to i31ref
PASS Check i31ref argument type
PASS Numbers in i31 range are i31ref, not hostref
PASS i31ref global
PASS i31ref table

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<!-- This file is required for WebKit test infrastructure to run the templated test -->
Loading

0 comments on commit 3137d42

Please sign in to comment.