Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5bb9d4d5b23a5ab7aac6fbac9033a2ce09ab1a01
https://github.com/WebKit/WebKit/commit/5bb9d4d5b23a5ab7aac6fbac9033a2ce09ab1a01
Author: Yusuke Suzuki <[email protected]>
Date: 2024-07-30 (Tue, 30 Jul 2024)
Changed paths:
M Source/JavaScriptCore/wasm/WasmCalleeGroup.cpp
M Source/JavaScriptCore/wasm/WasmCalleeGroup.h
M Source/JavaScriptCore/wasm/WasmEntryPlan.cpp
M Source/JavaScriptCore/wasm/WasmEntryPlan.h
M Source/JavaScriptCore/wasm/WasmPlan.cpp
M Source/JavaScriptCore/wasm/WasmPlan.h
M Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp
Log Message:
-----------
[JSC] Do not invoke macro-task unnecessarily for wasm instantiate
https://bugs.webkit.org/show_bug.cgi?id=277345
rdar://problem/132831541
Reviewed by Yijia Huang.
WebAssembly.instantiate could do compile and instantiate. At that time, since
wasm LLInt is doing similar thing for both,
when instantiating after compiling, we may already have well-established wasm
module. We should skip resolving promise in
the next macro task in that case since we already asynchronously compiled the
module and further asynchronous instantiation
is not necessary.
* Source/JavaScriptCore/wasm/WasmCalleeGroup.cpp:
(JSC::Wasm::CalleeGroup::CalleeGroup):
(JSC::Wasm::CalleeGroup::compileAsync):
* Source/JavaScriptCore/wasm/WasmCalleeGroup.h:
* Source/JavaScriptCore/wasm/WasmEntryPlan.cpp:
(JSC::Wasm::EntryPlan::completeSyncIfPossible):
* Source/JavaScriptCore/wasm/WasmEntryPlan.h:
* Source/JavaScriptCore/wasm/WasmPlan.cpp:
(JSC::Wasm::Plan::addCompletionTaskIfNecessary):
(JSC::Wasm::Plan::addCompletionTask): Deleted.
* Source/JavaScriptCore/wasm/WasmPlan.h:
* Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp:
(JSC::instantiate):
(JSC::compileAndInstantiate):
(JSC::JSWebAssembly::instantiateForStreaming):
(JSC::JSC_DEFINE_HOST_FUNCTION):
Canonical link: https://commits.webkit.org/281608@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