[webkit-changes] [WebKit/WebKit] 8ac634: [Wasm-GC] Begin importing GC spec tests

Asumu Takikawa noreply at github.com
Mon Nov 7 11:07:09 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8ac6345449d9d019f2c37b8b722bdeabe6a4cbe0
      https://github.com/WebKit/WebKit/commit/8ac6345449d9d019f2c37b8b722bdeabe6a4cbe0
  Author: Asumu Takikawa <asumu at igalia.com>
  Date:   2022-11-07 (Mon, 07 Nov 2022)

  Changed paths:
    M JSTests/wasm.yaml
    A JSTests/wasm/gc-spec-harness.js
    A JSTests/wasm/gc-spec-harness/async_index.js
    A JSTests/wasm/gc-spec-harness/sync_index.js
    A JSTests/wasm/gc-spec-tests/type-canon.wast.js
    A JSTests/wasm/gc-spec-tests/type-equivalence.wast.js
    A JSTests/wasm/gc-spec-tests/type-rec.wast.js
    A JSTests/wasm/gc-spec-tests/type-subtyping.wast.js
    M Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp
    M Tools/Scripts/run-jsc-stress-tests

  Log Message:
  -----------
  [Wasm-GC] Begin importing GC spec tests
https://bugs.webkit.org/show_bug.cgi?id=247336

Reviewed by Justin Michaud.

This patch creates a Wasm GC proposal spec test harness and test suite
from the upstream repository at

  https://github.com/WebAssembly/gc (commit 5404857b61a42b4d9fdd99f6b78d8febb266f1fc)

The tests contain a subset of the upstream tests that are currently
runnable in JSC. Some of the tests are commented out due to open bugs
that block them.

In addition, this patch fixes a small bug (a missing type expansion use)
revealed by the tests.

* JSTests/wasm.yaml:
* JSTests/wasm/gc-spec-harness.js: Added.
(import.string_appeared_here.then):
(test):
(promise_test):
(let.assert_unreached):
(let.console.log):
* JSTests/wasm/gc-spec-harness/async_index.js: Added.
(let.testNum):
(uniqueTest):
(assertThrows):
(externref):
(is_externref):
(is_funcref):
(eq_externref):
(eq_funcref):
(binary):
(module):
(assert_invalid):
(instance):
(exports):
(then.):
(reinitializeRegistry.get promise_test):
(reinitializeRegistry):
(catch):
(assert_exhaustion):
(get const):
* JSTests/wasm/gc-spec-harness/sync_index.js: Added.
(let.testNum):
(assertThrows):
(_assert):
(ValueResult):
(ErrorResult):
(Result.prototype.isError):
(externref):
(is_externref):
(is_funcref):
(eq_externref):
(eq_funcref):
(reinitializeRegistry.let.handler.get return):
(binary):
(module):
* JSTests/wasm/gc-spec-tests/type-canon.wast.js: Added.
* JSTests/wasm/gc-spec-tests/type-equivalence.wast.js: Added.
* JSTests/wasm/gc-spec-tests/type-rec.wast.js: Added.
* JSTests/wasm/gc-spec-tests/type-subtyping.wast.js: Added.
* Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp:
(JSC::WebAssemblyFunction::jsCallEntrypointSlow):
* Tools/Scripts/run-jsc-stress-tests:

Canonical link: https://commits.webkit.org/256417@main




More information about the webkit-changes mailing list