[webkit-changes] [WebKit/WebKit] 08963e: [JSC] Move OverridesGetPrototype to inline flags

Yusuke Suzuki noreply at github.com
Sat Feb 1 13:32:12 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 08963ea50bf420f786b700b817a3578ec9240ed0
      https://github.com/WebKit/WebKit/commit/08963ea50bf420f786b700b817a3578ec9240ed0
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2025-02-01 (Sat, 01 Feb 2025)

  Changed paths:
    M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
    M Source/JavaScriptCore/jit/AssemblyHelpers.cpp
    M Source/JavaScriptCore/llint/LowLevelInterpreter.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
    M Source/JavaScriptCore/runtime/JSTypeInfo.h

  Log Message:
  -----------
  [JSC] Move OverridesGetPrototype to inline flags
https://bugs.webkit.org/show_bug.cgi?id=286234
rdar://143210939

Reviewed by Justin Michaud.

This check is particularly hot in instanceof. Given that this is also
accessed from JIT code, we should make OverridesGetPrototype inline flag
and put it in JSCell instead of Structure.

* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileGetPrototypeOf):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
* Source/JavaScriptCore/jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::emitLoadPrototype):
* Source/JavaScriptCore/llint/LowLevelInterpreter.asm:
* Source/JavaScriptCore/llint/LowLevelInterpreter64.asm:
* Source/JavaScriptCore/runtime/JSTypeInfo.h:
(JSC::TypeInfo::overridesGetPrototype const):

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