[webkit-changes] [WebKit/WebKit] 50d7b3: [JSC] Fix misc wasm bugs to expand V8 test coverage

Yusuke Suzuki noreply at github.com
Tue Jan 24 18:35:06 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 50d7b35052eb1791708bb5bab76fdcd2558cf12c
      https://github.com/WebKit/WebKit/commit/50d7b35052eb1791708bb5bab76fdcd2558cf12c
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2023-01-24 (Tue, 24 Jan 2023)

  Changed paths:
    M JSTests/wasm/function-references/ref_types.js
    M JSTests/wasm/gc/arrays.js
    M JSTests/wasm/gc/i31.js
    M JSTests/wasm/gc/structs.js
    M JSTests/wasm/references/func_ref.js
    M JSTests/wasm/references/globals.js
    M JSTests/wasm/stress/global-wrong-type.js
    M JSTests/wasm/stress/mutable-globals.js
    M JSTests/wasm/v8/atomics.js
    M JSTests/wasm/v8/bit-shift-right.js
    M JSTests/wasm/v8/divrem-trap.js
    M JSTests/wasm/v8/export-global.js
    M JSTests/wasm/v8/export-table.js
    M JSTests/wasm/v8/externref-table.js
    M JSTests/wasm/v8/externref.js
    M JSTests/wasm/v8/ffi-error.js
    M JSTests/wasm/v8/indirect-call-non-zero-table.js
    M JSTests/wasm/v8/indirect-calls.js
    M JSTests/wasm/v8/indirect-tables.js
    M JSTests/wasm/v8/js-api.js
    M JSTests/wasm/v8/reference-tables.js
    M JSTests/wasm/v8/resources/wasm-module-builder.js
    M JSTests/wasm/v8/start-function.js
    M JSTests/wasm/v8/table-access.js
    M JSTests/wasm/v8/table-copy-externref.js
    M JSTests/wasm/v8/table-fill.js
    M JSTests/wasm/v8/table-grow-from-wasm.js
    M JSTests/wasm/v8/table-grow.js
    M JSTests/wasm/v8/table.js
    M JSTests/wasm/v8/unicode.js
    M Source/JavaScriptCore/wasm/WasmExceptionType.h
    M Source/JavaScriptCore/wasm/WasmGlobal.cpp
    M Source/JavaScriptCore/wasm/WasmInstance.cpp
    M Source/JavaScriptCore/wasm/js/JSWebAssemblyHelpers.h
    M Source/JavaScriptCore/wasm/js/WebAssemblyGlobalConstructor.cpp
    M Source/JavaScriptCore/wasm/js/WebAssemblyModuleConstructor.cpp

  Log Message:
  -----------
  [JSC] Fix misc wasm bugs to expand V8 test coverage
https://bugs.webkit.org/show_bug.cgi?id=251122
rdar://104623519

Reviewed by Mark Lam and Justin Michaud.

This patch fixes misc wasm issues to unlock some of V8 wasm tests.
This expands V8 wasm test coverage and defends against the future bug introduction.

* JSTests/wasm/function-references/ref_types.js:
(async testRefTypeParamCheck):
(async testRefGlobalCheck):
(async testExternFuncrefNonNullCheck):
(async testWasmJSGlobals):
* JSTests/wasm/gc/arrays.js:
* JSTests/wasm/gc/i31.js:
* JSTests/wasm/gc/structs.js:
* JSTests/wasm/references/func_ref.js:
(assert.throws):
(GetLocal.0.I32Const.0.TableSet.0.End.End.WebAssembly.assert.throws):
(GetLocal.0.I32Const.0.TableSet.0.End.End.WebAssembly):
(makeFuncrefIdent):
* JSTests/wasm/references/globals.js:
(async testGlobalConstructorForFuncref):
* JSTests/wasm/stress/global-wrong-type.js:
(assert.throws):
* JSTests/wasm/stress/mutable-globals.js:
* JSTests/wasm/v8/atomics.js:
(TestIllegalAtomicOp):
* JSTests/wasm/v8/bit-shift-right.js:
* JSTests/wasm/v8/divrem-trap.js:
* JSTests/wasm/v8/export-global.js:
(duplicateGlobalExportName):
* JSTests/wasm/v8/export-table.js:
(testExportNameClash):
* JSTests/wasm/v8/externref-table.js:
* JSTests/wasm/v8/externref.js:
(testGCInStackCheck):
* JSTests/wasm/v8/ffi-error.js:
(checkFailingInstantiation):
(testInvalidFFIs):
* JSTests/wasm/v8/indirect-call-non-zero-table.js:
* JSTests/wasm/v8/indirect-calls.js:
* JSTests/wasm/v8/indirect-tables.js:
(InitImportedTableSignatureMismatch):
(TestNonImportedGlobalInElementSegment):
* JSTests/wasm/v8/js-api.js:
(get assertThrows):
(set assertThrows):
(set let):
* JSTests/wasm/v8/reference-tables.js:
* JSTests/wasm/v8/resources/wasm-module-builder.js:
(assertTrapsOneOf):
* JSTests/wasm/v8/start-function.js:
(testInvalidIndex):
(testRun2): Deleted.
(testStartFFI.ffi.gak.foo): Deleted.
(testStartFFI): Deleted.
(testStartFunctionThrowsExplicitly.ffi.foo.throw_fn): Deleted.
(testStartFunctionThrowsExplicitly): Deleted.
* JSTests/wasm/v8/table-access.js:
* JSTests/wasm/v8/table-copy-externref.js:
* JSTests/wasm/v8/table-fill.js:
* JSTests/wasm/v8/table-grow-from-wasm.js:
* JSTests/wasm/v8/table-grow.js:
* JSTests/wasm/v8/table.js:
(TestConstructor):
(TestMaximumIsReadOnce.): Deleted.
(TestMaximumDoesHasProperty.): Deleted.
(TestMaximumDoesHasProperty): Deleted.
(TestLength): Deleted.
(TestGrow.init): Deleted.
(TestGrow.check): Deleted.
(TestGrow): Deleted.
(TestGrowWithInit.getDummy): Deleted.
(TestGrowWithInit): Deleted.
* JSTests/wasm/v8/unicode.js:
(errorMessageUnicodeInFuncName):
* Source/JavaScriptCore/wasm/WasmExceptionType.h:
(JSC::Wasm::isTypeErrorExceptionType):
* Source/JavaScriptCore/wasm/WasmGlobal.cpp:
(JSC::Wasm::Global::set):
* Source/JavaScriptCore/wasm/WasmInstance.cpp:
(JSC::Wasm::Instance::initElementSegment):
* Source/JavaScriptCore/wasm/js/JSWebAssemblyHelpers.h:
(JSC::fromJSValue):
* Source/JavaScriptCore/wasm/js/WebAssemblyGlobalConstructor.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
* Source/JavaScriptCore/wasm/js/WebAssemblyModuleConstructor.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):

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




More information about the webkit-changes mailing list