LLVM: llvm::jitlink::JITLinkMemoryManager Class Reference (original) (raw)

Manages allocations of JIT memory. More...

#include "[llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h](JITLinkMemoryManager%5F8h%5Fsource.html)"

Public Types
using AllocResult = Expected<std::unique_ptr<InFlightAlloc>>
Typedef for the argument to be passed to OnAllocatedFunction.
using OnAllocatedFunction = unique_function<void(AllocResult)>
Called when allocation has been completed.
using OnDeallocatedFunction = unique_function<void(Error)>
Called when deallocation has completed.
Public Member Functions
virtual ~JITLinkMemoryManager ()
virtual void allocate (const JITLinkDylib *JD, LinkGraph &G, OnAllocatedFunction OnAllocated)=0
Start the allocation process.
AllocResult allocate (const JITLinkDylib *JD, LinkGraph &G)
Convenience function for blocking allocation.
virtual void deallocate (std::vector< FinalizedAlloc > Allocs, OnDeallocatedFunction OnDeallocated)=0
Deallocate a list of allocation objects.
void deallocate (FinalizedAlloc Alloc, OnDeallocatedFunction OnDeallocated)
Convenience function for deallocation of a single alloc.
Error deallocate (std::vector< FinalizedAlloc > Allocs)
Convenience function for blocking deallocation.
Error deallocate (FinalizedAlloc Alloc)
Convenience function for blocking deallocation of a single alloc.

Manages allocations of JIT memory.

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

Definition at line 47 of file JITLinkMemoryManager.h.

AllocResult

OnAllocatedFunction

OnDeallocatedFunction

llvm::jitlink::JITLinkMemoryManager::~JITLinkMemoryManager ( ) virtualdefault

allocate() [1/2]

allocate() [2/2]

deallocate() [1/4]

deallocate() [2/4]

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

deallocate() [3/4]

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

deallocate() [4/4]

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

The documentation for this class was generated from the following files: