[webkit-changes] [WebKit/WebKit] 5cdeb9: [JSC] Do not take concurrent JS lock on CodeBlock ...

Yusuke Suzuki noreply at github.com
Mon Apr 15 15:40:31 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5cdeb9ec81887f1cdaae3780fb7d4bbbfc2ac8b8
      https://github.com/WebKit/WebKit/commit/5cdeb9ec81887f1cdaae3780fb7d4bbbfc2ac8b8
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2024-04-15 (Mon, 15 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/bytecode/CallLinkInfo.cpp
    M Source/JavaScriptCore/bytecode/CallLinkInfo.h
    M Source/JavaScriptCore/bytecode/CodeBlock.cpp
    M Source/JavaScriptCore/bytecode/CodeBlock.h

  Log Message:
  -----------
  [JSC] Do not take concurrent JS lock on CodeBlock when repatching DirectCall on the main thread
https://bugs.webkit.org/show_bug.cgi?id=272699
rdar://problem/126505237

Reviewed by Justin Michaud.

Stop taking a ConcurrentJSLock for DirectCall repatching since this is happening on the main thread.

* Source/JavaScriptCore/bytecode/CallLinkInfo.cpp:
(JSC::DirectCallLinkInfo::retrieveCodeBlock):
(JSC::DirectCallLinkInfo::retrieveCodePtr):
(JSC::DirectCallLinkInfo::repatchSpeculatively):
(JSC::DirectCallLinkInfo::validateSpeculativeRepatchOnMainThread):
(JSC::DirectCallLinkInfo::retrieveCallInfo): Deleted.
* Source/JavaScriptCore/bytecode/CallLinkInfo.h:
* Source/JavaScriptCore/bytecode/CodeBlock.cpp:
(JSC::CodeBlock::addressForCallConcurrently const):
* Source/JavaScriptCore/bytecode/CodeBlock.h:

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