llvm-project/llvm/examples
Chris Bieneman a34680a33e Break out OrcError and RPC
Summary:
When createing an ORC remote JIT target the current library split forces the target process to link large portions of LLVM (Core, Execution Engine, JITLink, Object, MC, Passes, RuntimeDyld, Support, Target, and TransformUtils). This occurs because the ORC RPC interfaces rely on the static globals the ORC Error types require, which starts a cycle of pulling in more and more.

This patch breaks the ORC RPC Error implementations out into an "OrcError" library which only depends on LLVM Support. It also pulls the ORC RPC headers into their own subdirectory.

With this patch code can include the Orc/RPC/*.h headers and will only incur link dependencies on LLVMOrcError and LLVMSupport.

Reviewers: lhames

Reviewed By: lhames

Subscribers: mgorny, hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D68732
2019-10-29 17:31:28 -07:00
..
BrainF Rename F_{None,Text,Append} to OF_{None,Text,Append}. NFC 2019-08-05 05:43:48 +00:00
ExceptionDemo [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
Fibonacci [opaque pointer types] Add a FunctionCallee wrapper type, and use it. 2019-02-01 02:28:03 +00:00
HowToUseJIT [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
HowToUseLLJIT [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
Kaleidoscope Break out OrcError and RPC 2019-10-29 17:31:28 -07:00
LLJITExamples [examples] Add a dependency on ExecutionEngine to LLJITWithObjectCache example. 2019-10-21 22:29:29 +00:00
ModuleMaker Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OCaml-Kaleidoscope
ParallelJIT [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
SpeculativeJIT [Orc] Roll back ThreadPool to std::function 2019-09-13 11:59:51 +00:00
CMakeLists.txt Speculative Compilation 2019-08-03 14:42:13 +00:00
LLVMBuild.txt Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00