Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4687d7ecfefad54c517d4af8e238e556ff4eefb3
https://github.com/WebKit/WebKit/commit/4687d7ecfefad54c517d4af8e238e556ff4eefb3
Author: Sergey Rubanov <[email protected]>
Date: 2026-08-10 (Mon, 10 Aug 2026)
Changed paths:
A JSTests/wasm/gc/elide-null-checks.js
M Source/JavaScriptCore/wasm/WasmBBQJIT.h
M Source/JavaScriptCore/wasm/WasmBBQJIT64.cpp
Log Message:
-----------
[JSC][Wasm] Elide BBQ null checks on non-nullable refs
https://bugs.webkit.org/show_bug.cgi?id=321439
Reviewed by Yusuke Suzuki.
OMG already skips the null check when the reference type is
non-nullable. BBQ still always emitted it for ref.as_non_null,
call_ref, and throw_ref because those emitters discarded the wasm
type. Keep TypedExpression and skip the check when !isNullable(),
matching array/struct and OMG.
* JSTests/wasm/gc/elide-null-checks.js: Added.
* Source/JavaScriptCore/wasm/WasmBBQJIT.h:
(JSC::Wasm::BBQJITImpl::BBQJIT::addRefAsNonNull):
(JSC::Wasm::BBQJITImpl::BBQJIT::addThrowRef):
* Source/JavaScriptCore/wasm/WasmBBQJIT64.cpp:
(JSC::Wasm::BBQJITImpl::BBQJIT::addRefAsNonNull):
(JSC::Wasm::BBQJITImpl::BBQJIT::addCallRef):
(JSC::Wasm::BBQJITImpl::BBQJIT::addThrowRef):
Canonical link: https://commits.webkit.org/318951@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications