LLVM 22.0.0git
llvm::orc::PerfSupportPlugin Class Reference

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"

Inheritance diagram for llvm::orc::PerfSupportPlugin:
[legend]

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)

Detailed Description

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.

Constructor & Destructor Documentation

◆ PerfSupportPlugin()

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::~PerfSupportPlugin ( )

Definition at line 265 of file PerfSupportPlugin.cpp.

References llvm::cantFail().

Member Function Documentation

◆ Create()

Expected< std::unique_ptr< PerfSupportPlugin > > PerfSupportPlugin::Create ( ExecutorProcessControl & EPC,
JITDylib & JD,
bool EmitDebugInfo,
bool EmitUnwindInfo )
static

◆ modifyPassConfig()

◆ notifyFailed()

Error llvm::orc::PerfSupportPlugin::notifyFailed ( MaterializationResponsibility & MR)
inlineoverridevirtual

Implements llvm::orc::LinkGraphLinkingLayer::Plugin.

Definition at line 41 of file PerfSupportPlugin.h.

References llvm::Error::success().

◆ notifyRemovingResources()

Error llvm::orc::PerfSupportPlugin::notifyRemovingResources ( JITDylib & JD,
ResourceKey K )
inlineoverridevirtual

Implements llvm::orc::LinkGraphLinkingLayer::Plugin.

Definition at line 45 of file PerfSupportPlugin.h.

References llvm::Error::success().

◆ notifyTransferringResources()

void llvm::orc::PerfSupportPlugin::notifyTransferringResources ( JITDylib & JD,
ResourceKey DstKey,
ResourceKey SrcKey )
inlineoverridevirtual

Implements llvm::orc::LinkGraphLinkingLayer::Plugin.

Definition at line 49 of file PerfSupportPlugin.h.


The documentation for this class was generated from the following files: