From a34680a33eb1caa5e224a9432e9f3e643824dc2d Mon Sep 17 00:00:00 2001 From: Chris Bieneman Date: Wed, 9 Oct 2019 14:27:52 -0700 Subject: 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 --- llvm/lib/ExecutionEngine/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'llvm/lib/ExecutionEngine/CMakeLists.txt') diff --git a/llvm/lib/ExecutionEngine/CMakeLists.txt b/llvm/lib/ExecutionEngine/CMakeLists.txt index ccee3460339..c5445fbc16d 100644 --- a/llvm/lib/ExecutionEngine/CMakeLists.txt +++ b/llvm/lib/ExecutionEngine/CMakeLists.txt @@ -21,6 +21,7 @@ endif() add_subdirectory(Interpreter) add_subdirectory(JITLink) add_subdirectory(MCJIT) +add_subdirectory(OrcError) add_subdirectory(Orc) add_subdirectory(RuntimeDyld) -- cgit v1.2.3