class MapperJITLinkMemoryManager

Declaration

class MapperJITLinkMemoryManager : public 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/Orc/MapperJITLinkMemoryManager.h:23

Inherits from: JITLinkMemoryManager

Member Variables

private std::unique_ptr<MemoryMapper> Mapper

Method Overview

  • public template <class MemoryMapperType, class... Args>static Expected<std::unique_ptr<MapperJITLinkMemoryManager>> CreateWithMapper(Args &&... A)
  • public MapperJITLinkMemoryManager(std::unique_ptr<MemoryMapper> Mapper)
  • public void allocate(const jitlink::JITLinkDylib * JD, jitlink::LinkGraph & G, llvm::jitlink::JITLinkMemoryManager::OnAllocatedFunction OnAllocated)
  • public void deallocate(std::vector<FinalizedAlloc> Allocs, llvm::jitlink::JITLinkMemoryManager::OnDeallocatedFunction OnDeallocated)

Inherited from JITLinkMemoryManager:

Methods

template <class MemoryMapperType, class... Args>
static Expected<
    std::unique_ptr<MapperJITLinkMemoryManager>>
CreateWithMapper(Args&&... A)

Declared at: llvm/include/llvm/ExecutionEngine/Orc/MapperJITLinkMemoryManager.h:29

Templates

MemoryMapperType
Args

Parameters

Args&&... A

MapperJITLinkMemoryManager(
    std::unique_ptr<MemoryMapper> Mapper)

Declared at: llvm/include/llvm/ExecutionEngine/Orc/MapperJITLinkMemoryManager.h:25

Parameters

std::unique_ptr<MemoryMapper> Mapper

void allocate(
    const jitlink::JITLinkDylib* JD,
    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/Orc/MapperJITLinkMemoryManager.h:37

Parameters

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

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/Orc/MapperJITLinkMemoryManager.h:42

Parameters

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