13#ifndef PROTEUS_JITENGINEHOST_HPP
14#define PROTEUS_JITENGINEHOST_HPP
18#include <llvm/ExecutionEngine/Orc/LLJIT.h>
36 const RuntimeDyld::LoadedObjectInfo &objInfo);
37 static void notifyLoaded(orc::MaterializationResponsibility &R,
38 const object::ObjectFile &Obj,
39 const RuntimeDyld::LoadedObjectInfo &LOI);
42 Expected<orc::ThreadSafeModule>
43 specializeIR(std::unique_ptr<Module> M, std::unique_ptr<LLVMContext> Ctx,
44 StringRef FnName, StringRef Suffix,
45 ArrayRef<RuntimeConstant> RCArray);
56 void addStaticLibrarySymbols();
char * IR
Definition CompilerInterfaceHost.cpp:20
char int void ** Args
Definition CompilerInterfaceHost.cpp:20
char int IRSize
Definition CompilerInterfaceHost.cpp:20
ArrayRef< RuntimeConstantInfo * > RCInfoArray
Definition CompilerInterfaceHost.cpp:24
Definition JitCache.hpp:32
Definition JitEngineHost.hpp:28
std::unique_ptr< orc::LLJIT > LLJITPtr
Definition JitEngineHost.hpp:30
Expected< orc::ThreadSafeModule > specializeIR(std::unique_ptr< Module > M, std::unique_ptr< LLVMContext > Ctx, StringRef FnName, StringRef Suffix, ArrayRef< RuntimeConstant > RCArray)
Definition JitEngineHost.cpp:181
~JitEngineHost()
Definition JitEngineHost.cpp:179
void * getFunctionAddress(StringRef FnName)
Definition JitEngineHost.cpp:366
static void dumpSymbolInfo(const object::ObjectFile &loadedObj, const RuntimeDyld::LoadedObjectInfo &objInfo)
Definition JitEngineHost.cpp:132
static JitEngineHost & instance()
Definition JitEngineHost.cpp:100
void compileOnly(std::unique_ptr< Module > M)
Definition JitEngineHost.cpp:360
static void notifyLoaded(orc::MaterializationResponsibility &R, const object::ObjectFile &Obj, const RuntimeDyld::LoadedObjectInfo &LOI)
Definition JitEngineHost.cpp:173
ExitOnError ExitOnErr
Definition JitEngineHost.hpp:31
void * compileAndLink(StringRef FnName, char *IR, int IRSize, void **Args, ArrayRef< RuntimeConstantInfo * > RCInfoArray)
Definition JitEngineHost.cpp:292
Definition JitEngine.hpp:33
Definition Dispatcher.cpp:14