LLVM 22.0.0git
|
Log perf jitdump events for each object (see https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/perf/Documentation/jitdump-specification.txt). More...
#include "llvm/ExecutionEngine/Orc/Debugging/PerfSupportPlugin.h"
Public Member Functions | |
PerfSupportPlugin (ExecutorProcessControl &EPC, ExecutorAddr RegisterPerfStartAddr, ExecutorAddr RegisterPerfEndAddr, ExecutorAddr RegisterPerfImplAddr, bool EmitDebugInfo, bool EmitUnwindInfo) | |
~PerfSupportPlugin () | |
void | modifyPassConfig (MaterializationResponsibility &MR, jitlink::LinkGraph &G, jitlink::PassConfiguration &Config) override |
Error | notifyFailed (MaterializationResponsibility &MR) override |
Error | notifyRemovingResources (JITDylib &JD, ResourceKey K) override |
void | notifyTransferringResources (JITDylib &JD, ResourceKey DstKey, ResourceKey SrcKey) override |
Public Member Functions inherited from llvm::orc::LinkGraphLinkingLayer::Plugin | |
virtual | ~Plugin () |
virtual void | notifyMaterializing (MaterializationResponsibility &MR, jitlink::LinkGraph &G, jitlink::JITLinkContext &Ctx, MemoryBufferRef InputObject) |
virtual Error | notifyEmitted (MaterializationResponsibility &MR) |
Static Public Member Functions | |
static Expected< std::unique_ptr< PerfSupportPlugin > > | Create (ExecutorProcessControl &EPC, JITDylib &JD, bool EmitDebugInfo, bool EmitUnwindInfo) |
Log perf jitdump events for each object (see https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/perf/Documentation/jitdump-specification.txt).
Currently has support for dumping code load records and unwind info records.
Definition at line 28 of file PerfSupportPlugin.h.
PerfSupportPlugin::PerfSupportPlugin | ( | ExecutorProcessControl & | EPC, |
ExecutorAddr | RegisterPerfStartAddr, | ||
ExecutorAddr | RegisterPerfEndAddr, | ||
ExecutorAddr | RegisterPerfImplAddr, | ||
bool | EmitDebugInfo, | ||
bool | EmitUnwindInfo ) |
Definition at line 254 of file PerfSupportPlugin.cpp.
References llvm::cantFail().
PerfSupportPlugin::~PerfSupportPlugin | ( | ) |
Definition at line 265 of file PerfSupportPlugin.cpp.
References llvm::cantFail().
|
static |
Definition at line 285 of file PerfSupportPlugin.cpp.
References llvm::inconvertibleErrorCode(), llvm::orc::lookupAndRecordAddrs(), llvm::make_error(), llvm::orc::makeJITDylibSearchOrder(), and llvm::orc::Static.
|
overridevirtual |
Reimplemented from llvm::orc::LinkGraphLinkingLayer::Plugin.
Definition at line 269 of file PerfSupportPlugin.cpp.
References llvm::cantFail(), llvm::orc::shared::WrapperFunctionCall::Create(), G, llvm::jitlink::PassConfiguration::PostFixupPasses, and llvm::Error::success().
|
inlineoverridevirtual |
Implements llvm::orc::LinkGraphLinkingLayer::Plugin.
Definition at line 41 of file PerfSupportPlugin.h.
References llvm::Error::success().
|
inlineoverridevirtual |
Implements llvm::orc::LinkGraphLinkingLayer::Plugin.
Definition at line 45 of file PerfSupportPlugin.h.
References llvm::Error::success().
|
inlineoverridevirtual |
Implements llvm::orc::LinkGraphLinkingLayer::Plugin.
Definition at line 49 of file PerfSupportPlugin.h.