Non-debuginfo JITLink perf jitdump support
authorPrem Chintalapudi <prem.chintalapudi@gmail.com>
Tue, 18 Apr 2023 21:15:32 +0000 (17:15 -0400)
committerValentin Churavy <v.churavy@gmail.com>
Tue, 18 Apr 2023 21:15:59 +0000 (17:15 -0400)
commit76e1521b0acff739c0425d0fcbb9360fc17f1af8
tree04f440c51e2fbb50d19fcadfaaa630d897e979e7
parentd343a395431f70f63d66ef31cb69c8c4babdb21f
Non-debuginfo JITLink perf jitdump support

This patch ports PerfJITEventListener to a JITLink plugin, but adds unwind record support and drops debuginfo support temporarily. Debuginfo can be enabled in the future by providing a way to obtain a DWARFContext from a LinkGraph.

See D146060 for an experimental implementation that adds debuginfo parsing.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D146169
llvm/include/llvm/ExecutionEngine/Orc/PerfSupportPlugin.h [new file with mode: 0644]
llvm/include/llvm/ExecutionEngine/Orc/Shared/PerfSharedStructs.h [new file with mode: 0644]
llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderPerf.h [new file with mode: 0644]
llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
llvm/lib/ExecutionEngine/Orc/PerfSupportPlugin.cpp [new file with mode: 0644]
llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderPerf.cpp [new file with mode: 0644]
llvm/test/ExecutionEngine/JITLink/x86-64/ELF_perf.s [new file with mode: 0644]
llvm/tools/llvm-jitlink/llvm-jitlink.cpp