class JITLinkMemoryManager::InFlightAlloc

Declaration

class JITLinkMemoryManager::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/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h:118

Method Overview

  • public virtual void abandon(llvm::jitlink::JITLinkMemoryManager::InFlightAlloc::OnAbandonedFunction OnAbandoned)
  • public virtual void finalize(llvm::jitlink::JITLinkMemoryManager::InFlightAlloc::OnFinalizedFunction OnFinalized)
  • public Expected<llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc> finalize()
  • public virtual ~InFlightAlloc()

Methods

virtual void abandon(
    llvm::jitlink::JITLinkMemoryManager::
        InFlightAlloc::OnAbandonedFunction
            OnAbandoned)

Description

Called prior to finalization if the allocation should be abandoned.

Declared at: llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h:126

Parameters

llvm::jitlink::JITLinkMemoryManager:: InFlightAlloc::OnAbandonedFunction OnAbandoned

virtual void finalize(
    llvm::jitlink::JITLinkMemoryManager::
        InFlightAlloc::OnFinalizedFunction
            OnFinalized)

Description

Called to transfer working memory to the target and apply finalization.

Declared at: llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h:129

Parameters

llvm::jitlink::JITLinkMemoryManager:: InFlightAlloc::OnFinalizedFunction OnFinalized

Expected<llvm::jitlink::JITLinkMemoryManager::
             FinalizedAlloc>
finalize()

Description

Synchronous convenience version of finalize.

Declared at: llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h:132

virtual ~InFlightAlloc()

Declared at: llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h:123