diff options
Diffstat (limited to 'tools/lli/OrcLazyJIT.cpp')
-rw-r--r-- | tools/lli/OrcLazyJIT.cpp | 35 |
1 files changed, 5 insertions, 30 deletions
diff --git a/tools/lli/OrcLazyJIT.cpp b/tools/lli/OrcLazyJIT.cpp index 7f483f742b80d..b13e7696627f0 100644 --- a/tools/lli/OrcLazyJIT.cpp +++ b/tools/lli/OrcLazyJIT.cpp @@ -8,7 +8,7 @@ //===----------------------------------------------------------------------===// #include "OrcLazyJIT.h" -#include "llvm/ExecutionEngine/Orc/OrcArchitectureSupport.h" +#include "llvm/ExecutionEngine/Orc/OrcABISupport.h" #include "llvm/Support/Debug.h" #include "llvm/Support/DynamicLibrary.h" #include <cstdio> @@ -46,31 +46,6 @@ namespace { cl::init(true), cl::Hidden); } -std::unique_ptr<OrcLazyJIT::CompileCallbackMgr> -OrcLazyJIT::createCompileCallbackMgr(Triple T) { - switch (T.getArch()) { - default: return nullptr; - - case Triple::x86_64: { - typedef orc::LocalJITCompileCallbackManager<orc::OrcX86_64> CCMgrT; - return llvm::make_unique<CCMgrT>(0); - } - } -} - -OrcLazyJIT::IndirectStubsManagerBuilder -OrcLazyJIT::createIndirectStubsMgrBuilder(Triple T) { - switch (T.getArch()) { - default: return nullptr; - - case Triple::x86_64: - return [](){ - return llvm::make_unique< - orc::LocalIndirectStubsManager<orc::OrcX86_64>>(); - }; - } -} - OrcLazyJIT::TransformFtor OrcLazyJIT::createDebugDumper() { switch (OrcDumpKind) { @@ -142,8 +117,8 @@ int llvm::runOrcLazyJIT(std::unique_ptr<Module> M, int ArgC, char* ArgV[]) { EngineBuilder EB; EB.setOptLevel(getOptLevel()); auto TM = std::unique_ptr<TargetMachine>(EB.selectTarget()); - auto CompileCallbackMgr = - OrcLazyJIT::createCompileCallbackMgr(Triple(TM->getTargetTriple())); + Triple T(TM->getTargetTriple()); + auto CompileCallbackMgr = orc::createLocalCompileCallbackManager(T, 0); // If we couldn't build the factory function then there must not be a callback // manager for this target. Bail out. @@ -153,8 +128,7 @@ int llvm::runOrcLazyJIT(std::unique_ptr<Module> M, int ArgC, char* ArgV[]) { return 1; } - auto IndirectStubsMgrBuilder = - OrcLazyJIT::createIndirectStubsMgrBuilder(Triple(TM->getTargetTriple())); + auto IndirectStubsMgrBuilder = orc::createLocalIndirectStubsManagerBuilder(T); // If we couldn't build a stubs-manager-builder for this target then bail out. if (!IndirectStubsMgrBuilder) { @@ -181,3 +155,4 @@ int llvm::runOrcLazyJIT(std::unique_ptr<Module> M, int ArgC, char* ArgV[]) { auto Main = fromTargetAddress<MainFnPtr>(MainSym.getAddress()); return Main(ArgC, ArgV); } + |