diff options
| author | Lang Hames <lhames@gmail.com> | 2018-10-01 00:59:28 +0000 |
|---|---|---|
| committer | Lang Hames <lhames@gmail.com> | 2018-10-01 00:59:28 +0000 |
| commit | 47d0a37704ebc529ad2ab8a46e12a06e88df3207 (patch) | |
| tree | cdd23207f9f71204487625e1bc2e6889535fb740 /llvm/tools/lli/lli.cpp | |
| parent | d89c273a2ee4349704dc2e21b7037f01f6bde60a (diff) | |
| download | bcm5719-llvm-47d0a37704ebc529ad2ab8a46e12a06e88df3207.tar.gz bcm5719-llvm-47d0a37704ebc529ad2ab8a46e12a06e88df3207.zip | |
[ORC] Add convenience methods for creating DynamicLibraryFallbackGenerators for
libraries on disk, and for the current process.
Avoids more boilerplate during JIT construction.
llvm-svn: 343430
Diffstat (limited to 'llvm/tools/lli/lli.cpp')
| -rw-r--r-- | llvm/tools/lli/lli.cpp | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/llvm/tools/lli/lli.cpp b/llvm/tools/lli/lli.cpp index b23733eac99..4794fe532a5 100644 --- a/llvm/tools/lli/lli.cpp +++ b/llvm/tools/lli/lli.cpp @@ -752,15 +752,6 @@ static orc::IRTransformLayer2::TransformFunction createDebugDumper() { int runOrcLazyJIT(const char *ProgName) { // Start setting up the JIT environment. - // First add lli's symbols into the JIT's search space. - std::string ErrMsg; - sys::DynamicLibrary LibLLI = - sys::DynamicLibrary::getPermanentLibrary(nullptr, &ErrMsg); - if (!LibLLI.isValid()) { - errs() << "Error loading lli symbols: " << ErrMsg << ".\n"; - return 1; - } - // Parse the main module. orc::ThreadSafeContext TSCtx(llvm::make_unique<LLVMContext>()); SMDiagnostic Err; @@ -802,9 +793,8 @@ int runOrcLazyJIT(const char *ProgName) { } return Dump(std::move(TSM), R); }); - J->getMainJITDylib().setFallbackDefinitionGenerator( - orc::DynamicLibraryFallbackGenerator( - std::move(LibLLI), DL, [](orc::SymbolStringPtr) { return true; })); + J->getMainJITDylib().setFallbackDefinitionGenerator(ExitOnErr( + orc::DynamicLibraryFallbackGenerator::CreateForCurrentProcess(DL))); orc::MangleAndInterner Mangle(J->getExecutionSession(), DL); orc::LocalCXXRuntimeOverrides2 CXXRuntimeOverrides; |

