1if (NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB) 2 set (atomic_lib atomic) 3endif() 4 5if( CMAKE_HOST_UNIX AND HAVE_LIBRT ) 6 set(rt_lib rt) 7endif() 8 9add_llvm_component_library(LLVMOrcJIT 10 AbsoluteSymbols.cpp 11 COFFVCRuntimeSupport.cpp 12 COFFPlatform.cpp 13 CompileOnDemandLayer.cpp 14 CompileUtils.cpp 15 Core.cpp 16 DebugObjectManagerPlugin.cpp 17 DebugUtils.cpp 18 EHFrameRegistrationPlugin.cpp 19 EPCDynamicLibrarySearchGenerator.cpp 20 EPCDebugObjectRegistrar.cpp 21 EPCEHFrameRegistrar.cpp 22 EPCGenericDylibManager.cpp 23 EPCGenericJITLinkMemoryManager.cpp 24 EPCGenericRTDyldMemoryManager.cpp 25 EPCIndirectionUtils.cpp 26 ExecutionUtils.cpp 27 ObjectFileInterface.cpp 28 IndirectionUtils.cpp 29 IRCompileLayer.cpp 30 IRTransformLayer.cpp 31 IRPartitionLayer.cpp 32 JITTargetMachineBuilder.cpp 33 JITLinkReentryTrampolines.cpp 34 LazyObjectLinkingLayer.cpp 35 LazyReexports.cpp 36 Layer.cpp 37 LinkGraphLayer.cpp 38 LinkGraphLinkingLayer.cpp 39 LoadLinkableFile.cpp 40 LookupAndRecordAddrs.cpp 41 LLJIT.cpp 42 MachO.cpp 43 MachOPlatform.cpp 44 MapperJITLinkMemoryManager.cpp 45 MemoryMapper.cpp 46 ELFNixPlatform.cpp 47 Mangling.cpp 48 ObjectLinkingLayer.cpp 49 ObjectTransformLayer.cpp 50 OrcABISupport.cpp 51 OrcV2CBindings.cpp 52 RTDyldObjectLinkingLayer.cpp 53 SectCreate.cpp 54 SimpleRemoteEPC.cpp 55 Speculation.cpp 56 SpeculateAnalyses.cpp 57 ExecutorProcessControl.cpp 58 TaskDispatch.cpp 59 ThreadSafeModule.cpp 60 RedirectionManager.cpp 61 JITLinkRedirectableSymbolManager.cpp 62 ReOptimizeLayer.cpp 63 ADDITIONAL_HEADER_DIRS 64 ${LLVM_MAIN_INCLUDE_DIR}/llvm/ExecutionEngine/Orc 65 66 DEPENDS 67 intrinsics_gen 68 69 LINK_LIBS 70 ${LLVM_PTHREAD_LIB} 71 ${rt_lib} 72 ${atomic_lib} 73 74 LINK_COMPONENTS 75 BinaryFormat 76 Core 77 ExecutionEngine 78 JITLink 79 Object 80 OrcShared 81 OrcTargetProcess 82 WindowsDriver 83 MC 84 Passes 85 RuntimeDyld 86 Support 87 Target 88 TargetParser 89 TransformUtils 90 ) 91 92add_subdirectory(Debugging) 93add_subdirectory(Shared) 94add_subdirectory(TargetProcess) 95 96target_link_libraries(LLVMOrcJIT 97 PRIVATE 98 LLVMAnalysis 99 LLVMBitReader 100 LLVMBitWriter 101 LLVMPasses 102 ) 103