################################################################################
# Autogenerated by build_tools/bazel_to_cmake/bazel_to_cmake.py from           #
# tests/e2e/linalg/BUILD.bazel                                                 #
#                                                                              #
# Use iree_cmake_extra_content from iree/build_defs.oss.bzl to add arbitrary   #
# CMake-only content.                                                          #
#                                                                              #
# To disable autogeneration for this file entirely, delete this header.        #
################################################################################

iree_add_all_subdirs()

iree_check_single_backend_test_suite(
  NAME
    check_llvm-cpu_local-task
  SRCS
    "conv2d.mlir"
    "fp4_f32_conversion.mlir"
    "fp_to_subbyte.mlir"
    "gather_like_ops.mlir"
    "narrow_n_matmuls.mlir"
    "pack.mlir"
    "pack_dynamic_inner_tiles.mlir"
    "pack_i8.mlir"
    "small_float_arith.mlir"
    "softmax.mlir"
    "subbyte_to_fp.mlir"
    "unpack.mlir"
  TARGET_BACKEND
    "llvm-cpu"
  DRIVER
    "local-task"
  COMPILER_FLAGS
    "--iree-llvmcpu-target-cpu=generic"
  LABELS
    "nowasm"
)

iree_check_single_backend_test_suite(
  NAME
    check_llvm-cpu_dt_fusion_local-task
  SRCS
    "narrow_n_matmuls.mlir"
  TARGET_BACKEND
    "llvm-cpu"
  DRIVER
    "local-task"
  COMPILER_FLAGS
    "--iree-dispatch-creation-data-tiling"
    "--iree-llvmcpu-target-cpu=generic"
  LABELS
    "nowasm"
)

iree_check_single_backend_test_suite(
  NAME
    check_vmvx_local-task
  SRCS
    "argmax.mlir"
    "conv2d.mlir"
    "fp4_f32_conversion.mlir"
    "fp_to_subbyte.mlir"
    "gather_like_ops.mlir"
    "index.mlir"
    "narrow_n_matmuls.mlir"
    "pack.mlir"
    "pack_dynamic_inner_tiles.mlir"
    "pack_i8.mlir"
    "small_float_arith.mlir"
    "softmax.mlir"
    "subbyte_to_fp.mlir"
    "unpack.mlir"
  TARGET_BACKEND
    "vmvx"
  DRIVER
    "local-task"
)

iree_check_single_backend_test_suite(
  NAME
    check_vmvx_ukernel_local-task
  SRCS
    "pack.mlir"
    "pack_dynamic_inner_tiles.mlir"
    "unpack.mlir"
  TARGET_BACKEND
    "vmvx"
  DRIVER
    "local-task"
  COMPILER_FLAGS
    "--iree-vmvx-enable-microkernels"
    "--iree-vmvx-enable-ukernels-decompose-linalg-generic=false"
)

iree_check_single_backend_test_suite(
  NAME
    check_vulkan-spirv_vulkan
  SRCS
    "argmax.mlir"
    "conv2d.mlir"
    "fp_to_subbyte.mlir"
    "gather_like_ops.mlir"
    "index.mlir"
    "narrow_n_matmuls.mlir"
    "small_float_arith.mlir"
    "softmax.mlir"
    "subbyte_to_fp.mlir"
  TARGET_BACKEND
    "vulkan-spirv"
  DRIVER
    "vulkan"
)

iree_check_single_backend_test_suite(
  NAME
    check_winograd_llvm-cpu_local-task
  SRCS
    "conv2d.mlir"
  TARGET_BACKEND
    "llvm-cpu"
  DRIVER
    "local-task"
  COMPILER_FLAGS
    "--iree-preprocessing-pass-pipeline=builtin.module\(func.func\(iree-linalg-ext-convert-conv2d-to-winograd\)\)"
    "--iree-llvmcpu-target-cpu=generic"
)

iree_check_single_backend_test_suite(
  NAME
    check_winograd_vulkan-spirv_vulkan
  SRCS
    "conv2d.mlir"
  TARGET_BACKEND
    "vulkan-spirv"
  DRIVER
    "vulkan"
  COMPILER_FLAGS
    "--iree-preprocessing-pass-pipeline=builtin.module\(func.func\(iree-linalg-ext-convert-conv2d-to-winograd\)\)"
)

iree_check_single_backend_test_suite(
  NAME
    check_large_linalg_matmul_cuda
  SRCS
    "conv2d.mlir"
    "fp_to_subbyte.mlir"
    "large_linalg_matmul.mlir"
    "narrow_n_matmuls.mlir"
    "pack_i8.mlir"
    "softmax.mlir"
    "subbyte_to_fp.mlir"
    "unpack.mlir"
  TARGET_BACKEND
    "cuda"
  DRIVER
    "cuda"
  LABELS
    "noasan"
    "nomsan"
    "notsan"
    "noubsan"
    "requires-gpu-nvidia"
)

iree_check_single_backend_test_suite(
  NAME
    check_rocm_hip
  SRCS
    "argmax.mlir"
    "conv2d.mlir"
    "fp4_f32_conversion.mlir"
    "fp_to_subbyte.mlir"
    "gather_like_ops.mlir"
    "index.mlir"
    "narrow_n_matmuls.mlir"
    "pack_i8.mlir"
    "small_float_arith.mlir"
    "softmax.mlir"
    "subbyte_to_fp.mlir"
    "unpack.mlir"
  TARGET_BACKEND
    "rocm"
  DRIVER
    "hip"
  COMPILER_FLAGS
    "--iree-llvmgpu-enable-small-float-emulation"
  TIMEOUT
    300
)

iree_check_single_backend_test_suite(
  NAME
    check_index_llvm-cpu_local-task
  SRCS
    "index.mlir"
  TARGET_BACKEND
    "llvm-cpu"
  DRIVER
    "local-task"
  COMPILER_FLAGS
    "--iree-llvmcpu-target-cpu=generic"
  LABELS
    "noriscv"
)

iree_check_single_backend_test_suite(
  NAME
    check_argmax_llvm-cpu_local-task
  SRCS
    "argmax.mlir"
  TARGET_BACKEND
    "llvm-cpu"
  DRIVER
    "local-task"
  COMPILER_FLAGS
    "--iree-llvmcpu-target-cpu=generic"
)

### BAZEL_TO_CMAKE_PRESERVES_ALL_CONTENT_BELOW_THIS_LINE ###
