Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5cfff9fe44c6ff31639c0024dc286e909b971710
https://github.com/WebKit/WebKit/commit/5cfff9fe44c6ff31639c0024dc286e909b971710
Author: Sergey Rubanov <[email protected]>
Date: 2026-08-20 (Thu, 20 Aug 2026)
Changed paths:
M JSTests/wasm/modules/js-wasm-cycle.js
M JSTests/wasm/modules/js-wasm-global-namespace.js
M JSTests/wasm/modules/js-wasm-global.js
A JSTests/wasm/modules/js-wasm-v128-global.js
A JSTests/wasm/modules/js-wasm-v128-import.js
A JSTests/wasm/modules/v128-global.wasm
A JSTests/wasm/modules/v128-global.wat
A JSTests/wasm/modules/v128-import.wasm
A JSTests/wasm/modules/v128-import.wat
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/exports.tentative.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/exports.tentative.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/global-exports.tentative.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/global-exports.tentative.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/js-wasm-cycle.tentative.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/js-wasm-cycle.tentative.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/v128-tdz.tentative.any-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/v128-tdz.tentative.any.worker-expected.txt
M
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/exported-names.tentative.html
M
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/resources/js-wasm-cycle.js
M
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/wasm-js-cycle.tentative.html
M Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.cpp
Log Message:
-----------
[JSC][Wasm] Unwrap immutable globals in the ESM module namespace
https://bugs.webkit.org/show_bug.cgi?id=322115
Reviewed by Yusuke Suzuki.
ESM import of a Wasm module should expose immutable globals as JS
values, not WebAssembly.Global objects. Instance.exports is unchanged.
v128 and exnref cannot be represented as JS values, so those namespace
bindings stay TDZ. Wasm-to-wasm ESM imports still take the Global
wrapper from Instance.exports.
Update older webapi ESM tests that still expected Global wrappers to
match the jsapi unwrap checks.
* Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.cpp:
* JSTests/wasm/modules/js-wasm-global.js:
* JSTests/wasm/modules/js-wasm-global-namespace.js:
* JSTests/wasm/modules/js-wasm-cycle.js:
* JSTests/wasm/modules/js-wasm-v128-global.js: Added.
* JSTests/wasm/modules/v128-global.wat: Added.
* JSTests/wasm/modules/v128-global.wasm: Added.
* JSTests/wasm/modules/js-wasm-v128-import.js: Added.
* JSTests/wasm/modules/v128-import.wat: Added.
* JSTests/wasm/modules/v128-import.wasm: Added.
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/exports.tentative.any-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/exports.tentative.any.worker-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/global-exports.tentative.any-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/global-exports.tentative.any.worker-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/js-wasm-cycle.tentative.any-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/js-wasm-cycle.tentative.any.worker-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/v128-tdz.tentative.any-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/jsapi/esm-integration/v128-tdz.tentative.any.worker-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/exported-names.tentative.html:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/exported-names.tentative-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/resources/js-wasm-cycle.js:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/js-wasm-cycle.tentative-expected.txt:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/wasm-js-cycle.tentative.html:
*
LayoutTests/imported/w3c/web-platform-tests/wasm/webapi/esm-integration/wasm-js-cycle.tentative-expected.txt:
Canonical link: https://commits.webkit.org/319544@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications