Skip to content

Commit 2fde0db

Browse files
committed
EISW-163564 Add CMake option to conditionally disable TosaToTensor conversion
1 parent 02d0198 commit 2fde0db

File tree

9 files changed

+57
-19
lines changed

9 files changed

+57
-19
lines changed

mlir/CMakeLists.txt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,24 @@ set(MLIR_PDLL_TABLEGEN_TARGET "${MLIR_PDLL_TABLEGEN_TARGET}" CACHE INTERNAL "")
217217
set(MLIR_SRC_SHARDER_TABLEGEN_EXE "${MLIR_SRC_SHARDER_TABLEGEN_EXE}" CACHE INTERNAL "")
218218
set(MLIR_SRC_SHARDER_TABLEGEN_TARGET "${MLIR_SRC_SHARDER_TABLEGEN_TARGET}" CACHE INTERNAL "")
219219

220+
# XeGPU Dialect Option (Default OFF)
221+
option(MLIR_DIALECT_XEGPU_ENABLE
222+
"Enable the XeGPU dialect."
223+
OFF)
224+
225+
if(MLIR_DIALECT_XEGPU_ENABLE)
226+
add_compile_definitions(MLIR_DIALECT_XEGPU_ENABLE)
227+
endif()
228+
229+
# TosaToTensor Conversion Option (Default OFF)
230+
option(MLIR_CONVERSION_TOSATOTENSOR_ENABLE
231+
"Enable TosaToTensor conversion"
232+
OFF)
233+
234+
if(MLIR_CONVERSION_TOSATOTENSOR_ENABLE)
235+
add_compile_definitions(MLIR_CONVERSION_TOSATOTENSOR_ENABLE)
236+
endif()
237+
220238
add_subdirectory(include/mlir)
221239
add_subdirectory(lib)
222240
# C API needs all dialects for registration, but should be built before tests.

mlir/include/mlir/Conversion/Passes.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,9 @@
7171
#include "mlir/Conversion/TosaToLinalg/TosaToLinalg.h"
7272
#include "mlir/Conversion/TosaToMLProgram/TosaToMLProgram.h"
7373
#include "mlir/Conversion/TosaToSCF/TosaToSCF.h"
74+
#ifdef MLIR_CONVERSION_TOSATOTENSOR_ENABLE
7475
#include "mlir/Conversion/TosaToTensor/TosaToTensor.h"
76+
#endif
7577
#include "mlir/Conversion/UBToLLVM/UBToLLVM.h"
7678
#include "mlir/Conversion/UBToSPIRV/UBToSPIRV.h"
7779
#include "mlir/Conversion/VectorToArmSME/VectorToArmSME.h"

mlir/include/mlir/Conversion/Passes.td

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1259,7 +1259,7 @@ def TosaToSCF : Pass<"tosa-to-scf"> {
12591259
//===----------------------------------------------------------------------===//
12601260
// TosaToTensor
12611261
//===----------------------------------------------------------------------===//
1262-
1262+
#ifdef MLIR_CONVERSION_TOSATOTENSOR_ENABLE
12631263
def TosaToTensor : Pass<"tosa-to-tensor"> {
12641264
let summary = "Lower TOSA to the Tensor dialect";
12651265
let dependentDialects = [
@@ -1272,6 +1272,7 @@ def TosaToTensor : Pass<"tosa-to-tensor"> {
12721272

12731273
let constructor = "tosa::createTosaToTensor()";
12741274
}
1275+
#endif
12751276

12761277
//===----------------------------------------------------------------------===//
12771278
// UBToLLVM
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
if(MLIR_CONVERSION_TOSATOTENSOR_ENABLE)
2+
set(LLVM_TARGET_DEFINITIONS Passes.td)
3+
mlir_tablegen(Passes.h.inc -gen-pass-decls -name TosaToTensor)
4+
mlir_tablegen(Passes.capi.h.inc -gen-pass-capi-header --prefix TosaToTensor)
5+
mlir_tablegen(Passes.capi.cpp.inc -gen-pass-capi-impl --prefix TosaToTensor)
6+
add_public_tablegen_target(MLIRTosaToTensorPassIncGen)
7+
endif()

mlir/lib/Conversion/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,9 @@ add_subdirectory(TosaToArith)
6262
add_subdirectory(TosaToLinalg)
6363
add_subdirectory(TosaToMLProgram)
6464
add_subdirectory(TosaToSCF)
65-
add_subdirectory(TosaToTensor)
65+
if(MLIR_CONVERSION_TOSATOTENSOR_ENABLE)
66+
add_subdirectory(TosaToTensor)
67+
endif()
6668
add_subdirectory(UBToLLVM)
6769
add_subdirectory(UBToSPIRV)
6870
add_subdirectory(VectorToArmSME)
Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,22 @@
1-
add_mlir_conversion_library(MLIRTosaToTensor
2-
TosaToTensor.cpp
3-
TosaToTensorPass.cpp
1+
if(MLIR_CONVERSION_TOSATOTENSOR_ENABLE)
2+
add_mlir_conversion_library(MLIRTosaToTensor
3+
TosaToTensor.cpp
4+
TosaToTensorPass.cpp
45

5-
ADDITIONAL_HEADER_DIRS
6-
${MLIR_MAIN_INCLUDE_DIR}/mlir/Dialect/Tosa
7-
${MLIR_MAIN_INCLUDE_DIR}/mlir/IR
6+
ADDITIONAL_HEADER_DIRS
7+
${MLIR_MAIN_INCLUDE_DIR}/mlir/Dialect/Tosa
8+
${MLIR_MAIN_INCLUDE_DIR}/mlir/IR
89

9-
DEPENDS
10-
MLIRConversionPassIncGen
10+
DEPENDS
11+
MLIRConversionPassIncGen
1112

12-
LINK_LIBS PUBLIC
13-
MLIRTensorDialect
14-
MLIRTensorUtils
15-
MLIRIR
16-
MLIRPass
17-
MLIRTosaDialect
18-
MLIRTosaTransforms
19-
MLIRSupport
20-
)
13+
LINK_LIBS PUBLIC
14+
MLIRTensorDialect
15+
MLIRTensorUtils
16+
MLIRIR
17+
MLIRPass
18+
MLIRTosaDialect
19+
MLIRTosaTransforms
20+
MLIRSupport
21+
)
22+
endif()

mlir/test/Conversion/TosaToTensor/tosa-to-tensor-invalid.mlir

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// REQUIRES: tosa-to-tensor-enabled
12
// RUN: mlir-opt --split-input-file -pass-pipeline="builtin.module(func.func(tosa-to-tensor))" %s -verify-diagnostics
23

34
// CHECK-LABEL: @slice_resultType_unranked

mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// REQUIRES: tosa-to-tensor-enabled
12
// RUN: mlir-opt --split-input-file --tosa-to-tensor %s -o -| FileCheck %s
23

34
// -----

mlir/test/lit.site.cfg.py.in

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,10 @@ config.riscv_emulator_utils_lib_dir = "@RISCV_EMULATOR_UTILS_LIB_DIR@"
7272
# Add feature to enable/disable XeGPU Dialect tests
7373
if "@MLIR_DIALECT_XEGPU_ENABLE@" == "ON":
7474
config.available_features.add("xegpu-dialect-enabled")
75+
76+
# Add feature to enable/disable TosaTotensor tests
77+
if "@MLIR_CONVERSION_TOSATOTENSOR_ENABLE@" == "ON":
78+
config.available_features.add("tosa-to-tensor-enabled")
7579

7680
import lit.llvm
7781
lit.llvm.initialize(lit_config, config)

0 commit comments

Comments
 (0)