[webkit-changes] [WebKit/WebKit] 6e5a36: [JSC] Make megamorphic IC stateless

Yusuke Suzuki noreply at github.com
Fri May 17 21:25:45 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6e5a36bbc5f22eee5d8c40921cd4a5a8d7e6600a
      https://github.com/WebKit/WebKit/commit/6e5a36bbc5f22eee5d8c40921cd4a5a8d7e6600a
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2024-05-17 (Fri, 17 May 2024)

  Changed paths:
    M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
    M Source/JavaScriptCore/bytecode/InlineCacheCompiler.h

  Log Message:
  -----------
  [JSC] Make megamorphic IC stateless
https://bugs.webkit.org/show_bug.cgi?id=274316
rdar://128277946

Reviewed by Keith Miller.

We store expected UniquedStringImpl into InlineCacheHandler (must not keep it as Ref! lifetime is managed by StructureStubInfo) in megamorphic IC
when Handler IC is enabled. And we retrieve it from GPRInfo::handlerGPR. So we can share one code for all of megamorphic IC, thus it becomes stateless.

* Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp:
(JSC::isStateless):
(JSC::InlineCacheHandler::InlineCacheHandler):
(JSC::InlineCacheCompiler::generateWithGuard):
(JSC::InlineCacheCompiler::regenerate):
* Source/JavaScriptCore/bytecode/InlineCacheCompiler.h:

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