Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 68768cee2adf785612f9d889e5227deb2c0a647b
      
https://github.com/WebKit/WebKit/commit/68768cee2adf785612f9d889e5227deb2c0a647b
  Author: Yusuke Suzuki <[email protected]>
  Date:   2024-06-20 (Thu, 20 Jun 2024)

  Changed paths:
    A JSTests/stress/try-get-value-without-gc.js
    M Source/JavaScriptCore/runtime/JSFunction.cpp
    M Source/JavaScriptCore/runtime/JSString.cpp
    M Source/JavaScriptCore/runtime/JSString.h

  Log Message:
  -----------
  [JSC] Add JSString::resolveRopeWithoutGC and use it in GC end phase
https://bugs.webkit.org/show_bug.cgi?id=274052
rdar://128009982

Reviewed by Keith Miller.

This patch adds JSString::resolveRopeWithoutGC to handle string generation 
without reporting external memory allocation to GC.
This is necessary since we may call this function in GC end phase, where GC 
operations are not allowed.
But this existing code itself is not allocating GC memory actually: it is just 
reporting a sidedata to GC, so it does not matter to the integrity of JSC VM.

* JSTests/stress/try-get-value-without-gc.js: Added.
(main.error):
(main):
* Source/JavaScriptCore/runtime/JSFunction.cpp:
(JSC::getCalculatedDisplayName):
* Source/JavaScriptCore/runtime/JSString.cpp:
(JSC::JSRopeString::resolveRopeToAtomString const):
(JSC::JSRopeString::resolveRopeToExistingAtomString const):
(JSC::JSRopeString::resolveRopeWithFunction const):
(JSC::JSRopeString::resolveRope const):
(JSC::JSRopeString::resolveRopeWithoutGC const):
(JSC:: const):
* Source/JavaScriptCore/runtime/JSString.h:

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