Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 40b199fd234d04368f5d7716f26f182d9e8f8103
      
https://github.com/WebKit/WebKit/commit/40b199fd234d04368f5d7716f26f182d9e8f8103
  Author: Yusuke Suzuki <[email protected]>
  Date:   2024-07-30 (Tue, 30 Jul 2024)

  Changed paths:
    M Source/JavaScriptCore/jsc.cpp
    M Source/JavaScriptCore/runtime/DeferredWorkTimer.cpp
    M Source/JavaScriptCore/runtime/DeferredWorkTimer.h
    M Source/JavaScriptCore/runtime/JSFinalizationRegistry.cpp
    M Source/JavaScriptCore/runtime/WaiterListManager.cpp
    M Source/JavaScriptCore/wasm/WasmStreamingCompiler.cpp
    M Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp
    M Source/WebCore/page/OpportunisticTaskScheduler.cpp

  Log Message:
  -----------
  [JSC] Mark Wasm instantiation promise as ImminentlyScheduled
https://bugs.webkit.org/show_bug.cgi?id=277320
rdar://132777482

Reviewed by Justin Michaud.

Wasm instantiation is scheduled work as it will be resolved soon within 
reasonable time.
This patch introduces WorkType annotation to DeferredWorkTimer Work and we use 
ImminentlyScheduled
type for wasm instantiation resolution promise. By using this information, we 
schedule OpportunisticTaskScheduler
appropriately.

* Source/JavaScriptCore/jsc.cpp:
(JSC_DEFINE_HOST_FUNCTION):
* Source/JavaScriptCore/runtime/DeferredWorkTimer.cpp:
(JSC::DeferredWorkTimer::TicketData::TicketData):
(JSC::DeferredWorkTimer::TicketData::create):
(JSC::DeferredWorkTimer::runRunLoop):
(JSC::DeferredWorkTimer::addPendingWork):
(JSC::DeferredWorkTimer::hasImminentlyScheduledWork const):
* Source/JavaScriptCore/runtime/DeferredWorkTimer.h:
* Source/JavaScriptCore/runtime/JSFinalizationRegistry.cpp:
(JSC::JSFinalizationRegistry::finalizeUnconditionally):
* Source/JavaScriptCore/runtime/WaiterListManager.cpp:
(JSC::Waiter::Waiter):
* Source/JavaScriptCore/wasm/WasmStreamingCompiler.cpp:
(JSC::Wasm::StreamingCompiler::StreamingCompiler):
* Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp:
(JSC::JSWebAssembly::webAssemblyModuleValidateAsync):
(JSC::instantiate):
(JSC::compileAndInstantiate):
* Source/WebCore/page/OpportunisticTaskScheduler.cpp:
(WebCore::isBusyForTimerBasedGC):
(WebCore::OpportunisticTaskScheduler::FullGCActivityCallback::doCollection):
(WebCore::OpportunisticTaskScheduler::EdenGCActivityCallback::doCollection):

Canonical link: https://commits.webkit.org/281581@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

Reply via email to