Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8f742098b444303d409e7b87ea10cf42cafaa5a7
      
https://github.com/WebKit/WebKit/commit/8f742098b444303d409e7b87ea10cf42cafaa5a7
  Author: Yusuke Suzuki <[email protected]>
  Date:   2026-05-14 (Thu, 14 May 2026)

  Changed paths:
    A JSTests/stress/dynamic-import-inline-microtask-result-promise.js
    M Source/JavaScriptCore/runtime/CyclicModuleRecord.cpp
    M Source/JavaScriptCore/runtime/JSMicrotask.cpp
    M Source/JavaScriptCore/runtime/JSModuleLoader.cpp
    M Source/JavaScriptCore/runtime/JSPromise.cpp
    M Source/JavaScriptCore/runtime/JSPromise.h
    M Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp

  Log Message:
  -----------
  [JSC] Support Inlined InternalMicrotask reaction with Promise
https://bugs.webkit.org/show_bug.cgi?id=314788
rdar://177040942

Reviewed by Sosuke Suzuki.

313220@main now offers yet another JSCell* space in JSPromise, thus we
can just store JSPromise* as well when adding inline InternalMicrotask
reaction. This patch supports it and now all InternalMicrotask reaction
can be inlined when it is only one reaction in the promise.

Test: JSTests/stress/dynamic-import-inline-microtask-result-promise.js

* JSTests/stress/dynamic-import-inline-microtask-result-promise.js: Added.
(shouldBe):
(async const):
(catch):
(err.null.throw.new.Error):
(then):
* Source/JavaScriptCore/runtime/CyclicModuleRecord.cpp:
(JSC::CyclicModuleRecord::executeAsync):
* Source/JavaScriptCore/runtime/JSMicrotask.cpp:
(JSC::runInternalMicrotask):
* Source/JavaScriptCore/runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::loadModule):
(JSC::JSModuleLoader::innerModuleLoading):
* Source/JavaScriptCore/runtime/JSPromise.cpp:
(JSC::JSPromise::setInlineMicrotaskReaction):
(JSC::JSPromise::spillInlineReaction):
(JSC::JSPromise::performPromiseThenWithInternalMicrotask):
(JSC::JSPromise::settleInlineInternalMicrotask):
(JSC::JSPromise::resolveWithInternalMicrotaskForAsyncAwait):
* Source/JavaScriptCore/runtime/JSPromise.h:
* Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):

Canonical link: https://commits.webkit.org/313230@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to