class EPCGenericJITLinkMemoryManager::InFlightAlloc
Declaration
class EPCGenericJITLinkMemoryManager::InFlightAlloc
: public InFlightAlloc { /* full declaration omitted */ };
Description
Represents an allocation which has not been finalized yet. InFlightAllocs manage both executor memory allocations and working memory allocations. On finalization, the InFlightAlloc should transfer the content of working memory into executor memory, apply memory protections, and run any finalization functions. Working memory should be kept alive at least until one of the following happens: (1) the InFlightAlloc instance is destroyed, (2) the InFlightAlloc is abandoned, (3) finalized target memory is destroyed. If abandon is called then working memory and executor memory should both be freed.
Declared at: llvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp:22
Inherits from: JITLinkMemoryManager::InFlightAlloc
Member Variables
- private llvm::orc::EPCGenericJITLinkMemoryManager& Parent
- private llvm::jitlink::LinkGraph& G
- private llvm::orc::ExecutorAddr AllocAddr
- private llvm::orc::EPCGenericJITLinkMemoryManager:: InFlightAlloc::SegInfoMap Segs
Method Overview
- public InFlightAlloc(llvm::orc::EPCGenericJITLinkMemoryManager & Parent, llvm::jitlink::LinkGraph & G, llvm::orc::ExecutorAddr AllocAddr, llvm::orc::EPCGenericJITLinkMemoryManager::InFlightAlloc::SegInfoMap Segs)
- public void abandon(llvm::jitlink::JITLinkMemoryManager::InFlightAlloc::OnAbandonedFunction OnAbandoned)
- public void finalize(llvm::jitlink::JITLinkMemoryManager::InFlightAlloc::OnFinalizedFunction OnFinalize)
Inherited from JITLinkMemoryManager::InFlightAlloc:
Methods
¶InFlightAlloc(
llvm::orc::EPCGenericJITLinkMemoryManager&
Parent,
llvm::jitlink::LinkGraph& G,
llvm::orc::ExecutorAddr AllocAddr,
llvm::orc::EPCGenericJITLinkMemoryManager::
InFlightAlloc::SegInfoMap Segs)
InFlightAlloc(
llvm::orc::EPCGenericJITLinkMemoryManager&
Parent,
llvm::jitlink::LinkGraph& G,
llvm::orc::ExecutorAddr AllocAddr,
llvm::orc::EPCGenericJITLinkMemoryManager::
InFlightAlloc::SegInfoMap Segs)
Declared at: llvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp:41
Parameters
- llvm::orc::EPCGenericJITLinkMemoryManager& Parent
- llvm::jitlink::LinkGraph& G
- llvm::orc::ExecutorAddr AllocAddr
- llvm::orc::EPCGenericJITLinkMemoryManager:: InFlightAlloc::SegInfoMap Segs
¶void abandon(
llvm::jitlink::JITLinkMemoryManager::
InFlightAlloc::OnAbandonedFunction
OnAbandoned)
void abandon(
llvm::jitlink::JITLinkMemoryManager::
InFlightAlloc::OnAbandonedFunction
OnAbandoned)
Description
Called prior to finalization if the allocation should be abandoned.
Declared at: llvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp:78
Parameters
- llvm::jitlink::JITLinkMemoryManager:: InFlightAlloc::OnAbandonedFunction OnAbandoned
¶void finalize(
llvm::jitlink::JITLinkMemoryManager::
InFlightAlloc::OnFinalizedFunction
OnFinalize)
void finalize(
llvm::jitlink::JITLinkMemoryManager::
InFlightAlloc::OnFinalizedFunction
OnFinalize)
Description
Called to transfer working memory to the target and apply finalization.
Declared at: llvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp:45
Parameters
- llvm::jitlink::JITLinkMemoryManager:: InFlightAlloc::OnFinalizedFunction OnFinalize