OSDN Git Service

[ORC] Add partitioning support to CompileOnDemandLayer2.
authorLang Hames <lhames@gmail.com>
Sat, 29 Sep 2018 23:49:57 +0000 (23:49 +0000)
committerLang Hames <lhames@gmail.com>
Sat, 29 Sep 2018 23:49:57 +0000 (23:49 +0000)
commit90c3271e8e4d6a21d439da26deb0fd7e8ec63cdc
tree42686299721ea97e41005bff89991fb5a9985120
parent974e7049611e334921d42e9e28b6b61927f614e3
[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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@343396 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
include/llvm/ExecutionEngine/Orc/LLJIT.h
lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
lib/ExecutionEngine/Orc/Core.cpp
lib/ExecutionEngine/Orc/ThreadSafeModule.cpp
lib/ExecutionEngine/RuntimeDyld/JITSymbol.cpp
test/ExecutionEngine/OrcLazy/basic-whole-module-partitions.ll [new file with mode: 0644]
test/ExecutionEngine/OrcLazy/module-flags.ll
tools/lli/lli.cpp