[webkit-changes] [WebKit/WebKit] 6165ff: [JSC] Keep builtin UnlinkedFunctionExecutable

Yusuke Suzuki noreply at github.com
Wed Mar 20 16:53:27 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6165ff108d4cb0a08d1989951f6af78efa5644e4
      https://github.com/WebKit/WebKit/commit/6165ff108d4cb0a08d1989951f6af78efa5644e4
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2024-03-20 (Wed, 20 Mar 2024)

  Changed paths:
    M Source/JavaScriptCore/builtins/BuiltinExecutables.cpp
    M Source/JavaScriptCore/builtins/BuiltinExecutables.h
    M Source/JavaScriptCore/heap/Heap.cpp
    M Source/JavaScriptCore/runtime/VM.cpp

  Log Message:
  -----------
  [JSC] Keep builtin UnlinkedFunctionExecutable
https://bugs.webkit.org/show_bug.cgi?id=271324
rdar://125101756

Reviewed by Justin Michaud and Keith Miller.

We found that they go away quickly when opening a new iframe etc., and as a result, we may parse
and generate code again and again for very popular builtin functions in some cases. Let's keep
them in a similar manner to CodeCache. And clear when CodeCache clearing gets requested.

* Source/JavaScriptCore/builtins/BuiltinExecutables.cpp:
(JSC::BuiltinExecutables::visitAggregateImpl):
(JSC::BuiltinExecutables::clear):
(JSC::BuiltinExecutables::finalizeUnconditionally): Deleted.
* Source/JavaScriptCore/builtins/BuiltinExecutables.h:
* Source/JavaScriptCore/heap/Heap.cpp:
(JSC::Heap::finalizeUnconditionalFinalizers):
* Source/JavaScriptCore/runtime/VM.cpp:
(JSC::VM::deleteAllCode):
(JSC::VM::visitAggregateImpl):

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



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


More information about the webkit-changes mailing list