[webkit-changes] [WebKit/WebKit] 7f950e: [JSC] Make PerfLog work on Darwin

Yusuke Suzuki noreply at github.com
Wed Aug 23 17:31:42 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7f950e05da63384e2e49fb9375558f688b4667db
      https://github.com/WebKit/WebKit/commit/7f950e05da63384e2e49fb9375558f688b4667db
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2023-08-23 (Wed, 23 Aug 2023)

  Changed paths:
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/assembler/LinkBuffer.cpp
    M Source/JavaScriptCore/assembler/LinkBuffer.h
    M Source/JavaScriptCore/assembler/PerfLog.cpp
    M Source/JavaScriptCore/assembler/PerfLog.h
    M Source/JavaScriptCore/jit/ExecutableAllocator.cpp
    M Source/JavaScriptCore/runtime/Options.cpp

  Log Message:
  -----------
  [JSC] Make PerfLog work on Darwin
https://bugs.webkit.org/show_bug.cgi?id=260626
rdar://problem/114345611

Reviewed by Justin Michaud.

This patch makes PerfLog work on Darwin, which generates JITDump[1] on Darwin.
While this is not performance efficient enough, we can later optimize the way to dump this, and try using it for a prototype.

[1]: https://raw.githubusercontent.com/torvalds/linux/master/tools/perf/Documentation/jitdump-specification.txt

* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/assembler/LinkBuffer.cpp:
(JSC::LinkBuffer::finalizeCodeWithDisassemblyImpl):
* Source/JavaScriptCore/assembler/LinkBuffer.h:
* Source/JavaScriptCore/assembler/PerfLog.cpp:
(JSC::PerfLog::singleton):
(JSC::getCurrentThreadID):
* Source/JavaScriptCore/assembler/PerfLog.h:
* Source/JavaScriptCore/jit/ExecutableAllocator.cpp:
(JSC::initializeJITPageReservation):
* Source/JavaScriptCore/runtime/Options.cpp:
(JSC::Options::isAvailable):

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




More information about the webkit-changes mailing list