Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3a46f626fff11aa685d44c365db4334cd0f620ee
https://github.com/WebKit/WebKit/commit/3a46f626fff11aa685d44c365db4334cd0f620ee
Author: Daniel Liu <[email protected]>
Date: 2025-04-16 (Wed, 16 Apr 2025)
Changed paths:
A JSTests/stress/catch-from-function-inlining-simd-function.js
M Source/JavaScriptCore/wasm/WasmOMGIRGenerator.cpp
Log Message:
-----------
OMG catch handlers should individually track if they require SIMD
https://bugs.webkit.org/show_bug.cgi?id=291594
rdar://148245348
Reviewed by Yijia Huang.
Previously, we tried to fix inlined OMG catch handlers by forcing parent
functions to use SIMD if a child function used SIMD. However, this ended
up being an incorrect fix: since the parent function isn't compiled with
SIMD, it expects its catch handlers to not use SIMD. Thus, each catch in
each function needs to track if it needs SIMD individually, invoking the
correct patchpoint handler for SIMD vs non-SIMD. This fix ensures that a
non-SIMD function which inlines a SIMD function emits correct entrypoint
stubs for catch handlers from the original function and from the inlined
function.
* JSTests/stress/catch-from-function-inlining-simd-function.js: Added.
(instantiate):
(async let.fn0):
(async let):
* Source/JavaScriptCore/wasm/WasmOMGIRGenerator.cpp:
(JSC::Wasm::OMGIRGenerator::usesSIMD):
(JSC::Wasm::OMGIRGenerator::OMGIRGenerator):
(JSC::Wasm::OMGIRGenerator::insertEntrySwitch):
(JSC::Wasm::OMGIRGenerator::insertConstants):
(JSC::Wasm::OMGIRGenerator::addLoop):
(JSC::Wasm::OMGIRGenerator::emitInlineDirectCall):
Canonical link: https://commits.webkit.org/293761@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes