Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3f3463a1d924785c5a671cc3e7dd730d90ecea27
      
https://github.com/WebKit/WebKit/commit/3f3463a1d924785c5a671cc3e7dd730d90ecea27
  Author: Yusuke Suzuki <[email protected]>
  Date:   2025-12-29 (Mon, 29 Dec 2025)

  Changed paths:
    M Source/JavaScriptCore/builtins/AsyncFromSyncIteratorPrototype.js
    M Source/JavaScriptCore/builtins/BuiltinNames.h
    M Source/JavaScriptCore/bytecode/BytecodeIntrinsicRegistry.cpp
    M Source/JavaScriptCore/bytecode/BytecodeIntrinsicRegistry.h
    M Source/JavaScriptCore/bytecode/LinkTimeConstant.h
    M Source/JavaScriptCore/runtime/JSGlobalObject.cpp
    M Source/JavaScriptCore/runtime/JSMicrotask.cpp
    M Source/JavaScriptCore/runtime/Microtask.h

  Log Message:
  -----------
  [JSC] Use InternalMicrotask in AsyncFromSyncIterator
https://bugs.webkit.org/show_bug.cgi?id=304755
rdar://167285616

Reviewed by Sosuke Suzuki.

This patch moves AsyncFromSyncIterator's driving function from
resolveWithoutPromiseForAsyncAwait to
resolveWithInternalMicrotaskForAsyncAwait. This is the step towards
removing "WithoutPromise" variant of these operations and fully
migrating to InternalMicrotask based one. This patch is keeping next
etc. function as JS since this is synchronously called from user JS, so
keeping it in JS is efficient, while moving promise resolving functions
to InternalMicrotask C++.

* Source/JavaScriptCore/builtins/AsyncFromSyncIteratorPrototype.js:
(next):
(return):
(throw):
(linkTimeConstant.asyncFromSyncIteratorOnRejected): Deleted.
(linkTimeConstant.asyncFromSyncIteratorOnFulfilledContinue): Deleted.
(linkTimeConstant.asyncFromSyncIteratorOnFulfilledDone): Deleted.
(): Deleted.
* Source/JavaScriptCore/builtins/BuiltinNames.h:
* Source/JavaScriptCore/bytecode/BytecodeIntrinsicRegistry.cpp:
(JSC::BytecodeIntrinsicRegistry::BytecodeIntrinsicRegistry):
* Source/JavaScriptCore/bytecode/BytecodeIntrinsicRegistry.h:
* Source/JavaScriptCore/bytecode/LinkTimeConstant.h:
* Source/JavaScriptCore/runtime/JSGlobalObject.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSGlobalObject::init):
* Source/JavaScriptCore/runtime/JSMicrotask.cpp:
(JSC::asyncFromSyncIteratorContinueOrDone):
(JSC::runInternalMicrotask):
* Source/JavaScriptCore/runtime/Microtask.h:

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



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

Reply via email to