From f02716a806339f2d8894502f2a7902fec50ef918 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Wed, 11 May 2022 09:57:15 +0200 Subject: [PATCH] [MLIR] Fix build without native arch D125214 split off a MLIRExecutionEngineUtils library that is used by MLIRGPUTransforms. However, currently the entire ExecutionEngine directory is skipped if the LLVM_NATIVE_ARCH target is not available. Move the check for LLVM_NATIVE_ARCH, such that MLIRExecutionEngineUtils always gets built, and only the JIT-related libraries are omitted without native arch. Differential Revision: https://reviews.llvm.org/D125357 --- mlir/lib/CMakeLists.txt | 6 +----- mlir/lib/ExecutionEngine/CMakeLists.txt | 25 +++++++++++++++---------- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/mlir/lib/CMakeLists.txt b/mlir/lib/CMakeLists.txt index 672a013445e8..523a2d4e7fc7 100644 --- a/mlir/lib/CMakeLists.txt +++ b/mlir/lib/CMakeLists.txt @@ -15,8 +15,4 @@ add_subdirectory(TableGen) add_subdirectory(Target) add_subdirectory(Tools) add_subdirectory(Transforms) - -# Only enable the ExecutionEngine if the native target is configured in. -if(TARGET ${LLVM_NATIVE_ARCH}) - add_subdirectory(ExecutionEngine) -endif() +add_subdirectory(ExecutionEngine) diff --git a/mlir/lib/ExecutionEngine/CMakeLists.txt b/mlir/lib/ExecutionEngine/CMakeLists.txt index 687f88fe81f9..76c4d3ddf8ed 100644 --- a/mlir/lib/ExecutionEngine/CMakeLists.txt +++ b/mlir/lib/ExecutionEngine/CMakeLists.txt @@ -13,16 +13,6 @@ set(LLVM_OPTIONAL_SOURCES JitRunner.cpp ) -if(LLVM_USE_INTEL_JITEVENTS) - set(LLVM_JIT_LISTENER_LIB - IntelJITEvents) -endif(LLVM_USE_INTEL_JITEVENTS) - -if(LLVM_USE_PERF) - set(LLVM_JIT_LISTENER_LIB - PerfJITEvents) -endif(LLVM_USE_PERF) - # Use a separate library for OptUtils, to avoid pulling in the entire JIT and # codegen infrastructure. Unlike MLIRExecutionEngine, this is part of # libMLIR.so. @@ -48,6 +38,21 @@ add_mlir_library(MLIRExecutionEngineUtils Passes ) +# Only enable the ExecutionEngine if the native target is configured in. +if(NOT TARGET ${LLVM_NATIVE_ARCH}) + return() +endif() + +if(LLVM_USE_INTEL_JITEVENTS) + set(LLVM_JIT_LISTENER_LIB + IntelJITEvents) +endif(LLVM_USE_INTEL_JITEVENTS) + +if(LLVM_USE_PERF) + set(LLVM_JIT_LISTENER_LIB + PerfJITEvents) +endif(LLVM_USE_PERF) + add_mlir_library(MLIRExecutionEngine ExecutionEngine.cpp