1# Exclude these from libMLIR.so because the JIT infrastructure 2# is a big dependency which most don't need. 3 4set(LLVM_OPTIONAL_SOURCES 5 AsyncRuntime.cpp 6 CRunnerUtils.cpp 7 SparseUtils.cpp 8 ExecutionEngine.cpp 9 RunnerUtils.cpp 10 OptUtils.cpp 11 JitRunner.cpp 12 ) 13 14add_mlir_library(MLIRExecutionEngine 15 ExecutionEngine.cpp 16 OptUtils.cpp 17 18 EXCLUDE_FROM_LIBMLIR 19 20 ADDITIONAL_HEADER_DIRS 21 ${MLIR_MAIN_INCLUDE_DIR}/mlir/ExecutionEngine 22 23 DEPENDS 24 intrinsics_gen 25 26 LINK_COMPONENTS 27 Core 28 Coroutines 29 ExecutionEngine 30 Object 31 OrcJIT 32 JITLink 33 Analysis 34 AggressiveInstCombine 35 InstCombine 36 MC 37 ScalarOpts 38 Target 39 Vectorize 40 TransformUtils 41 nativecodegen 42 IPO 43 44 LINK_LIBS PUBLIC 45 MLIRLLVMIR 46 MLIRTargetLLVMIR 47 ) 48 49get_property(dialect_libs GLOBAL PROPERTY MLIR_DIALECT_LIBS) 50add_mlir_library(MLIRJitRunner 51 JitRunner.cpp 52 53 EXCLUDE_FROM_LIBMLIR 54 55 DEPENDS 56 intrinsics_gen 57 58 LINK_COMPONENTS 59 Core 60 OrcJIT 61 JITLink 62 63 LINK_LIBS PUBLIC 64 ${dialect_libs} 65 MLIRExecutionEngine 66 MLIRIR 67 MLIRParser 68 MLIRStandard 69 MLIRTargetLLVMIR 70 MLIRTransforms 71 MLIRStandardToLLVM 72 MLIRSupport 73) 74 75add_mlir_library(mlir_c_runner_utils 76 SHARED 77 CRunnerUtils.cpp 78 SparseUtils.cpp 79 80 EXCLUDE_FROM_LIBMLIR 81 ) 82set_property(TARGET mlir_c_runner_utils PROPERTY CXX_STANDARD 11) 83 84add_mlir_library(mlir_c_runner_utils_static 85 CRunnerUtils.cpp 86 SparseUtils.cpp 87 88 EXCLUDE_FROM_LIBMLIR 89 ) 90set_property(TARGET mlir_c_runner_utils_static PROPERTY CXX_STANDARD 11) 91target_compile_definitions(mlir_c_runner_utils PRIVATE mlir_c_runner_utils_EXPORTS) 92 93add_mlir_library(mlir_runner_utils 94 SHARED 95 RunnerUtils.cpp 96 97 EXCLUDE_FROM_LIBMLIR 98 99 LINK_LIBS PUBLIC 100 mlir_c_runner_utils_static 101) 102target_compile_definitions(mlir_runner_utils PRIVATE mlir_runner_utils_EXPORTS) 103 104add_mlir_library(mlir_async_runtime 105 SHARED 106 AsyncRuntime.cpp 107 108 EXCLUDE_FROM_LIBMLIR 109 110 LINK_LIBS PUBLIC 111 mlir_c_runner_utils_static 112 ${LLVM_PTHREAD_LIB} 113) 114target_compile_definitions(mlir_async_runtime PRIVATE mlir_async_runtime_EXPORTS) 115