class EHFrameRegistrationPlugin
Declaration
class EHFrameRegistrationPlugin : public Plugin { /* full declaration omitted */ };
Description
Plugin instances can be added to the ObjectLinkingLayer to receive callbacks when code is loaded or emitted, and when JITLink is being configured.
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:204
Inherits from: ObjectLinkingLayer::Plugin
Member Variables
- private std::mutex EHFramePluginMutex
- private llvm::orc::ExecutionSession& ES
- private std::unique_ptr<jitlink::EHFrameRegistrar> Registrar
- private DenseMap< llvm::orc::MaterializationResponsibility*, llvm::orc::ExecutorAddrRange> InProcessLinks
- private DenseMap<llvm::orc::ResourceKey, std::vector<ExecutorAddrRange>> EHFrameRanges
Method Overview
- public EHFrameRegistrationPlugin(llvm::orc::ExecutionSession & ES, std::unique_ptr<jitlink::EHFrameRegistrar> Registrar)
- public void modifyPassConfig(llvm::orc::MaterializationResponsibility & MR, jitlink::LinkGraph & G, jitlink::PassConfiguration & PassConfig)
- public llvm::Error notifyEmitted(llvm::orc::MaterializationResponsibility & MR)
- public llvm::Error notifyFailed(llvm::orc::MaterializationResponsibility & MR)
- public llvm::Error notifyRemovingResources(llvm::orc::ResourceKey K)
- public void notifyTransferringResources(llvm::orc::ResourceKey DstKey, llvm::orc::ResourceKey SrcKey)
Inherited from ObjectLinkingLayer::Plugin:
- public getSyntheticSymbolDependencies
- public modifyPassConfig
- public notifyEmitted
- public notifyFailed
- public notifyLoaded
- public notifyMaterializing
- public notifyRemovingResources
- public notifyTransferringResources
Methods
¶EHFrameRegistrationPlugin(
llvm::orc::ExecutionSession& ES,
std::unique_ptr<jitlink::EHFrameRegistrar>
Registrar)
EHFrameRegistrationPlugin(
llvm::orc::ExecutionSession& ES,
std::unique_ptr<jitlink::EHFrameRegistrar>
Registrar)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:206
Parameters
- llvm::orc::ExecutionSession& ES
- std::unique_ptr<jitlink::EHFrameRegistrar> Registrar
¶void modifyPassConfig(
llvm::orc::MaterializationResponsibility& MR,
jitlink::LinkGraph& G,
jitlink::PassConfiguration& PassConfig)
void modifyPassConfig(
llvm::orc::MaterializationResponsibility& MR,
jitlink::LinkGraph& G,
jitlink::PassConfiguration& PassConfig)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:209
Parameters
- llvm::orc::MaterializationResponsibility& MR
- jitlink::LinkGraph& G
- jitlink::PassConfiguration& PassConfig
¶llvm::Error notifyEmitted(
llvm::orc::MaterializationResponsibility& MR)
llvm::Error notifyEmitted(
llvm::orc::MaterializationResponsibility& MR)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:212
Parameters
¶llvm::Error notifyFailed(
llvm::orc::MaterializationResponsibility& MR)
llvm::Error notifyFailed(
llvm::orc::MaterializationResponsibility& MR)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:213
Parameters
¶llvm::Error notifyRemovingResources(
llvm::orc::ResourceKey K)
llvm::Error notifyRemovingResources(
llvm::orc::ResourceKey K)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:214
Parameters
- llvm::orc::ResourceKey K
¶void notifyTransferringResources(
llvm::orc::ResourceKey DstKey,
llvm::orc::ResourceKey SrcKey)
void notifyTransferringResources(
llvm::orc::ResourceKey DstKey,
llvm::orc::ResourceKey SrcKey)
Declared at: llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h:215
Parameters
- llvm::orc::ResourceKey DstKey
- llvm::orc::ResourceKey SrcKey