################################################################################
# Autogenerated by build_tools/bazel_to_cmake/bazel_to_cmake.py from           #
# compiler/src/iree/compiler/Codegen/Interfaces/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_cc_library(
  NAME
    Interfaces
  HDRS
    "Interfaces.h"
  SRCS
    "Interfaces.cpp"
  DEPS
    ::BufferizationInterfaces
    ::PartitionableLoopsInterface
    ::ProcessorOpInterfaces
    ::UKernelOpInterface
    IREELinalgTransformDialect
    MLIRAMDGPUDialect
    MLIRAffineDialect
    MLIRAffineTransformOps
    MLIRArithValueBoundsOpInterfaceImpl
    MLIRBufferizationTransformOps
    MLIRGPUTransformOps
    MLIRIR
    MLIRLinalgDialect
    MLIRLinalgTransformOps
    MLIRLinalgTransforms
    MLIRMemRefDialect
    MLIRMemRefTransformOps
    MLIRSCFDialect
    MLIRSCFTransformOps
    MLIRTensorDialect
    MLIRTensorTransformOps
    MLIRTensorTransforms
    MLIRTransformLoopExtension
    MLIRVectorDialect
    MLIRVectorTransformOps
    MLIRVectorTransforms
    iree::compiler::Codegen::Common::TransformExtensions::CommonExtensions
    iree::compiler::Codegen::Dialect::GPU::TransformExtensions::IREEGPUExtensions
    iree::compiler::Codegen::ExternalInterfaces::ExternalModels
    iree::compiler::Codegen::LLVMCPU::TransformExtensions::LLVMCPUExtensions
    iree::compiler::Codegen::LLVMGPU::TransformExtensions::LLVMGPUExtensions
    iree::compiler::Dialect::Flow::TransformExtensions::FlowExtensions
    iree::compiler::Dialect::LinalgExt::TransformExtensions::LinalgExtExtensions
  PUBLIC
)

iree_cc_library(
  NAME
    BufferizationInterfaces
  HDRS
    "BufferizationInterfaces.h"
  SRCS
    "BufferizationInterfaces.cpp"
  DEPS
    MLIRArithTransforms
    MLIRBufferizationDialect
    MLIRBufferizationTransforms
    MLIRFuncTransforms
    MLIRIR
    MLIRLinalgTransforms
    MLIRMemRefDialect
    MLIRSCFTransforms
    MLIRSubsetOpInterface
    MLIRSupport
    MLIRTensorDialect
    MLIRTensorTransforms
    MLIRVectorTransforms
    iree::compiler::Codegen::Dialect::GPU::Transforms::BufferizationInterfaces
    iree::compiler::Codegen::Utils
    iree::compiler::Dialect::Flow::IR
    iree::compiler::Dialect::HAL::IR
    iree::compiler::Dialect::LinalgExt::IR
  PUBLIC
)

iree_cc_library(
  NAME
    UKernelOpInterface
  HDRS
    "UKernelOpInterface.h"
  TEXTUAL_HDRS
    "UKernelOpInterface.cpp.inc"
    "UKernelOpInterface.h.inc"
  SRCS
    "UKernelOpInterface.cpp"
  DEPS
    ::UKernelOpInterfaceGen
    MLIRFunctionInterfaces
    MLIRIR
  PUBLIC
)

iree_tablegen_library(
  NAME
    UKernelOpInterfaceGen
  TD_FILE
    "UKernelOpInterface.td"
  OUTS
    --gen-op-interface-decls UKernelOpInterface.h.inc
    --gen-op-interface-defs UKernelOpInterface.cpp.inc
)

iree_cc_library(
  NAME
    PartitionableLoopsInterface
  HDRS
    "PartitionableLoopsInterface.h"
  TEXTUAL_HDRS
    "PartitionableLoopsInterface.cpp.inc"
    "PartitionableLoopsInterface.h.inc"
  SRCS
    "PartitionableLoopsInterface.cpp"
  DEPS
    ::PartitionableLoopsInterfaceGen
    LLVMSupport
    MLIRIR
    MLIRLinalgDialect
    MLIRLinalgStructuredOpsIncGenLib
    MLIRSupport
    MLIRTensorDialect
    iree::compiler::Codegen::Dialect::GPU::IR::IREEGPUDialect
    iree::compiler::Dialect::LinalgExt::IR
  PUBLIC
)

iree_tablegen_library(
  NAME
    PartitionableLoopsInterfaceGen
  TD_FILE
    "PartitionableLoopsInterface.td"
  OUTS
    --gen-op-interface-decls PartitionableLoopsInterface.h.inc
    --gen-op-interface-defs PartitionableLoopsInterface.cpp.inc
)

iree_cc_library(
  NAME
    ProcessorOpInterfaces
  HDRS
    "ProcessorOpInterfaces.h"
  TEXTUAL_HDRS
    "ProcessorOpInterfaces.cpp.inc"
    "ProcessorOpInterfaces.h.inc"
  SRCS
    "ProcessorOpInterfaces.cpp"
  DEPS
    ::ProcessorOpInterfaceGen
    MLIRGPUDialect
    MLIRIR
    iree::compiler::Dialect::HAL::IR
  PUBLIC
)

iree_tablegen_library(
  NAME
    ProcessorOpInterfaceGen
  TD_FILE
    "ProcessorOpInterfaces.td"
  OUTS
    --gen-op-interface-decls ProcessorOpInterfaces.h.inc
    --gen-op-interface-defs ProcessorOpInterfaces.cpp.inc
)

### BAZEL_TO_CMAKE_PRESERVES_ALL_CONTENT_BELOW_THIS_LINE ###
