diff options
author | Lang Hames <lhames@gmail.com> | 2018-09-29 23:49:57 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2018-09-29 23:49:57 +0000 |
commit | 98440293fb903f69dbec401b8b4826b1fa206385 (patch) | |
tree | cf7feeb31965aa6bca6c709c047badabbd641576 /llvm/lib/ExecutionEngine/Orc/Core.cpp | |
parent | c3053e41bfcee50d80e3597452df55e2ecb4198a (diff) | |
download | bcm5719-llvm-98440293fb903f69dbec401b8b4826b1fa206385.tar.gz bcm5719-llvm-98440293fb903f69dbec401b8b4826b1fa206385.zip |
[ORC] Add partitioning support to CompileOnDemandLayer2.
CompileOnDemandLayer2 now supports user-supplied partition functions (the
original CompileOnDemandLayer already supported these).
Partition functions are called with the list of requested global values
(i.e. global values that currently have queries waiting on them) and have an
opportunity to select extra global values to materialize at the same time.
Also adds testing infrastructure for the new feature to lli.
llvm-svn: 343396
Diffstat (limited to 'llvm/lib/ExecutionEngine/Orc/Core.cpp')
-rw-r--r-- | llvm/lib/ExecutionEngine/Orc/Core.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/ExecutionEngine/Orc/Core.cpp b/llvm/lib/ExecutionEngine/Orc/Core.cpp index 7d38c3262a4..193a5d87e4e 100644 --- a/llvm/lib/ExecutionEngine/Orc/Core.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Core.cpp @@ -372,6 +372,8 @@ SymbolNameSet MaterializationResponsibility::getRequestedSymbols() const { } void MaterializationResponsibility::resolve(const SymbolMap &Symbols) { + LLVM_DEBUG(dbgs() << "In " << JD.getName() << " resolving " << Symbols + << "\n"); #ifndef NDEBUG for (auto &KV : Symbols) { auto I = SymbolFlags.find(KV.first); @@ -435,8 +437,8 @@ void MaterializationResponsibility::replace( SymbolFlags.erase(KV.first); LLVM_DEBUG(JD.getExecutionSession().runSessionLocked([&]() { - dbgs() << "In " << JD.getName() << " replacing symbols with MU@" << MU.get() - << " (" << MU->getName() << ")\n"; + dbgs() << "In " << JD.getName() << " replacing symbols with " << *MU + << "\n"; });); JD.replace(std::move(MU)); |