class JITLinkMemoryManager

Declaration

class JITLinkMemoryManager { /* full declaration omitted */ };

Description

Manages allocations of JIT memory. Instances of this class may be accessed concurrently from multiple threads and their implemetations should include any necessary synchronization.

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

Method Overview

  • public virtual void allocate(const llvm::jitlink::JITLinkDylib * JD, llvm::jitlink::LinkGraph & G, llvm::jitlink::JITLinkMemoryManager::OnAllocatedFunction OnAllocated)
  • public llvm::jitlink::JITLinkMemoryManager::AllocResult allocate(const llvm::jitlink::JITLinkDylib * JD, llvm::jitlink::LinkGraph & G)
  • public virtual void deallocate(std::vector<FinalizedAlloc> Allocs, llvm::jitlink::JITLinkMemoryManager::OnDeallocatedFunction OnDeallocated)
  • public void deallocate(llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc Alloc, llvm::jitlink::JITLinkMemoryManager::OnDeallocatedFunction OnDeallocated)
  • public llvm::Error deallocate(std::vector<FinalizedAlloc> Allocs)
  • public llvm::Error deallocate(llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc Alloc)
  • public virtual ~JITLinkMemoryManager()

Methods

virtual void allocate(
    const llvm::jitlink::JITLinkDylib* JD,
    llvm::jitlink::LinkGraph& G,
    llvm::jitlink::JITLinkMemoryManager::
        OnAllocatedFunction OnAllocated)

Description

Start the allocation process. If the initial allocation is successful then the OnAllocated function will be called with a std::unique_ptr <InFlightAlloc > value. If the assocation is unsuccessful then the OnAllocated function will be called with an Error.

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

Parameters

const llvm::jitlink::JITLinkDylib* JD
llvm::jitlink::LinkGraph& G
llvm::jitlink::JITLinkMemoryManager:: OnAllocatedFunction OnAllocated

llvm::jitlink::JITLinkMemoryManager::AllocResult
allocate(const llvm::jitlink::JITLinkDylib* JD,
         llvm::jitlink::LinkGraph& G)

Description

Convenience function for blocking allocation.

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

Parameters

const llvm::jitlink::JITLinkDylib* JD
llvm::jitlink::LinkGraph& G

virtual void deallocate(
    std::vector<FinalizedAlloc> Allocs,
    llvm::jitlink::JITLinkMemoryManager::
        OnDeallocatedFunction OnDeallocated)

Description

Deallocate a list of allocation objects. Dealloc actions will be run in reverse order (from the end of the vector to the start).

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

Parameters

std::vector<FinalizedAlloc> Allocs
llvm::jitlink::JITLinkMemoryManager:: OnDeallocatedFunction OnDeallocated

void deallocate(
    llvm::jitlink::JITLinkMemoryManager::
        FinalizedAlloc Alloc,
    llvm::jitlink::JITLinkMemoryManager::
        OnDeallocatedFunction OnDeallocated)

Description

Convenience function for deallocation of a single alloc.

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

Parameters

llvm::jitlink::JITLinkMemoryManager:: FinalizedAlloc Alloc
llvm::jitlink::JITLinkMemoryManager:: OnDeallocatedFunction OnDeallocated

llvm::Error deallocate(
    std::vector<FinalizedAlloc> Allocs)

Description

Convenience function for blocking deallocation.

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

Parameters

std::vector<FinalizedAlloc> Allocs

llvm::Error deallocate(
    llvm::jitlink::JITLinkMemoryManager::
        FinalizedAlloc Alloc)

Description

Convenience function for blocking deallocation of a single alloc.

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

Parameters

llvm::jitlink::JITLinkMemoryManager:: FinalizedAlloc Alloc

virtual ~JITLinkMemoryManager()

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