diff options
Diffstat (limited to 'llvm/tools/lli/lli.cpp')
-rw-r--r-- | llvm/tools/lli/lli.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/llvm/tools/lli/lli.cpp b/llvm/tools/lli/lli.cpp index be22cc927c2..31979097b93 100644 --- a/llvm/tools/lli/lli.cpp +++ b/llvm/tools/lli/lli.cpp @@ -397,8 +397,18 @@ int main(int argc, char **argv, char * const *envp) { return 1; } - if (UseJITKind == JITKind::OrcLazy) - return runOrcLazyJIT(std::move(Owner), argc, argv); + if (UseJITKind == JITKind::OrcLazy) { + std::vector<std::unique_ptr<Module>> Ms; + Ms.push_back(std::move(Owner)); + for (auto &ExtraMod : ExtraModules) { + Ms.push_back(parseIRFile(ExtraMod, Err, Context)); + if (!Ms.back()) { + Err.print(argv[0], errs()); + return 1; + } + } + return runOrcLazyJIT(std::move(Ms), argc, argv); + } if (EnableCacheManager) { std::string CacheName("file:"); |