13#ifndef LLVM_EXECUTIONENGINE_RTDYLDMEMORYMANAGER_H
14#define LLVM_EXECUTIONENGINE_RTDYLDMEMORYMANAGER_H
51 void anchor()
override;
138 bool AbortOnFailure =
true);
149 void anchor()
override;
#define DEFINE_SIMPLE_CONVERSION_FUNCTIONS(ty, ref)
Abstract interface for implementation execution of LLVM modules, designed to support both interpreter...
Represents a symbol in the JIT.
Legacy symbol resolution interface.
virtual void notifyObjectLoaded(ExecutionEngine *EE, const object::ObjectFile &)
This method is called after an object has been loaded into memory but before relocations are applied ...
static void deregisterEHFramesInProcess(uint8_t *Addr, size_t Size)
Deregister EH frames in the current process.
JITSymbol findSymbolInLogicalDylib(const std::string &Name) override
Default to treating all modules as separate.
void registerEHFrames(uint8_t *Addr, uint64_t LoadAddr, size_t Size) override
Register the EH frames with the runtime so that c++ exceptions work.
void operator=(const RTDyldMemoryManager &)=delete
virtual void * getPointerToNamedFunction(const std::string &Name, bool AbortOnFailure=true)
This method returns the address of the specified function.
virtual uint64_t getSymbolAddress(const std::string &Name)
Legacy symbol lookup - DEPRECATED! Please override findSymbol instead.
static uint64_t getSymbolAddressInProcess(const std::string &Name)
This method returns the address of the specified function or variable in the current process.
RTDyldMemoryManager()=default
JITSymbol findSymbol(const std::string &Name) override
This method returns a RuntimeDyld::SymbolInfo for the specified function or variable.
static void registerEHFramesInProcess(uint8_t *Addr, size_t Size)
Register EH frames in the current process.
~RTDyldMemoryManager() override
virtual uint64_t getSymbolAddressInLogicalDylib(const std::string &Name)
Legacy symbol lookup – DEPRECATED! Please override findSymbolInLogicalDylib instead.
void deregisterEHFrames() override
RTDyldMemoryManager(const RTDyldMemoryManager &)=delete
std::vector< EHFrame > EHFrameInfos
virtual void notifyObjectLoaded(RuntimeDyld &RTDyld, const object::ObjectFile &Obj)
This method is called after an object has been loaded into memory but before relocations are applied ...
This class is the base class for all object file types.
struct LLVMOpaqueMCJITMemoryManager * LLVMMCJITMemoryManagerRef
This is an optimization pass for GlobalISel generic memory operations.