LLVM 20.0.0git
Classes | Public Member Functions | List of all members
llvm::orc::EPCGenericJITLinkMemoryManager Class Reference

#include "llvm/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.h"

Inheritance diagram for llvm::orc::EPCGenericJITLinkMemoryManager:
Inheritance graph
[legend]

Classes

class  InFlightAlloc
 
struct  SymbolAddrs
 Function addresses for memory access. More...
 

Public Member Functions

 EPCGenericJITLinkMemoryManager (ExecutorProcessControl &EPC, SymbolAddrs SAs)
 Create an EPCGenericJITLinkMemoryManager instance from a given set of function addrs.
 
void allocate (const jitlink::JITLinkDylib *JD, jitlink::LinkGraph &G, OnAllocatedFunction OnAllocated) override
 Start the allocation process.
 
void deallocate (std::vector< FinalizedAlloc > Allocs, OnDeallocatedFunction OnDeallocated) override
 Deallocate a list of allocation objects.
 

Additional Inherited Members

Detailed Description

Definition at line 27 of file EPCGenericJITLinkMemoryManager.h.

Constructor & Destructor Documentation

◆ EPCGenericJITLinkMemoryManager()

llvm::orc::EPCGenericJITLinkMemoryManager::EPCGenericJITLinkMemoryManager ( ExecutorProcessControl EPC,
SymbolAddrs  SAs 
)
inline

Create an EPCGenericJITLinkMemoryManager instance from a given set of function addrs.

Definition at line 39 of file EPCGenericJITLinkMemoryManager.h.

Member Function Documentation

◆ allocate()

void llvm::orc::EPCGenericJITLinkMemoryManager::allocate ( const jitlink::JITLinkDylib JD,
jitlink::LinkGraph G,
OnAllocatedFunction  OnAllocated 
)
overridevirtual

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.

Implements llvm::jitlink::JITLinkMemoryManager.

Definition at line 99 of file EPCGenericJITLinkMemoryManager.cpp.

References llvm::orc::EPCGenericJITLinkMemoryManager::SymbolAddrs::Allocator, llvm::orc::ExecutorProcessControl::callSPSWrapperAsync(), llvm::cantFail(), G, llvm::orc::ExecutorProcessControl::getPageSize(), and llvm::orc::EPCGenericJITLinkMemoryManager::SymbolAddrs::Reserve.

◆ deallocate()

void llvm::orc::EPCGenericJITLinkMemoryManager::deallocate ( std::vector< FinalizedAlloc Allocs,
OnDeallocatedFunction  OnDeallocated 
)
overridevirtual

Deallocate a list of allocation objects.

Dealloc actions will be run in reverse order (from the end of the vector to the start).

Implements llvm::jitlink::JITLinkMemoryManager.

Definition at line 124 of file EPCGenericJITLinkMemoryManager.cpp.

References A, llvm::orc::EPCGenericJITLinkMemoryManager::SymbolAddrs::Allocator, llvm::orc::ExecutorProcessControl::callSPSWrapperAsync(), llvm::cantFail(), and llvm::orc::EPCGenericJITLinkMemoryManager::SymbolAddrs::Deallocate.


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