1538 lines
35 KiB
Text
1538 lines
35 KiB
Text
|
# This file is licensed under the Apache License v2.0 with LLVM Exceptions.
|
||
|
# See https://llvm.org/LICENSE.txt for license information.
|
||
|
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||
|
|
||
|
# Description:
|
||
|
# Python bindings for MLIR.
|
||
|
#
|
||
|
# We define separate filegroups for files in different directories so
|
||
|
# that downstream users can mirror the tree in their own py_library() rules.
|
||
|
|
||
|
load("//mlir:tblgen.bzl", "gentbl_filegroup", "td_library")
|
||
|
|
||
|
package(default_visibility = ["//visibility:public"])
|
||
|
|
||
|
licenses(["notice"])
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Core IR modules.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
filegroup(
|
||
|
name = "DialectCorePyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/_ods_common.py",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ExecutionEnginePyFiles",
|
||
|
srcs = [
|
||
|
"mlir/execution_engine.py",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ExecutionEnginePyIFiles",
|
||
|
srcs = [
|
||
|
"mlir/_mlir_libs/_mlirExecutionEngine.pyi",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "IRPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/ir.py",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ExtrasPyFiles",
|
||
|
srcs = glob([
|
||
|
"mlir/extras/*.py",
|
||
|
]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "IRPyIFiles",
|
||
|
srcs = [
|
||
|
"mlir/_mlir_libs/_mlir/__init__.pyi",
|
||
|
"mlir/_mlir_libs/_mlir/ir.pyi",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "MlirLibsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/_mlir_libs/__init__.py",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "PassManagerPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/passmanager.py",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "PassManagerPyIFiles",
|
||
|
srcs = [
|
||
|
"mlir/_mlir_libs/_mlir/passmanager.pyi",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "RuntimePyFiles",
|
||
|
srcs = glob([
|
||
|
"mlir/runtime/*.py",
|
||
|
]),
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Affine dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "AffineOpsPyTdFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/AffineOps.td",
|
||
|
],
|
||
|
deps = [
|
||
|
"//mlir:AffineOpsTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "AffineOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=affine",
|
||
|
],
|
||
|
"mlir/dialects/_affine_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/AffineOps.td",
|
||
|
deps = [
|
||
|
":AffineOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "AffineOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/affine.py",
|
||
|
":AffineOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Builtin dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "BuiltinOpsPyTdFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/BuiltinOps.td",
|
||
|
],
|
||
|
deps = [
|
||
|
"//mlir:BuiltinDialectTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "BuiltinOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=builtin",
|
||
|
],
|
||
|
"mlir/dialects/_builtin_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/BuiltinOps.td",
|
||
|
deps = [
|
||
|
":BuiltinOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "BuiltinOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/builtin.py",
|
||
|
":BuiltinOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# AMDGPU dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "AMDGPUOpsPyTdFiles",
|
||
|
srcs = [],
|
||
|
includes = ["../include"],
|
||
|
deps = [
|
||
|
"//mlir:AMDGPUTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "AMDGPUOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=amdgpu",
|
||
|
],
|
||
|
"mlir/dialects/_amdgpu_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=amdgpu",
|
||
|
],
|
||
|
"mlir/dialects/_amdgpu_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/AMDGPUOps.td",
|
||
|
deps = [
|
||
|
":AMDGPUOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "AMDGPUOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/amdgpu.py",
|
||
|
":AMDGPUOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Linalg dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "LinalgOpsPyTdFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/LinalgOps.td",
|
||
|
],
|
||
|
deps = [
|
||
|
"//mlir:LinalgOpsTdFiles",
|
||
|
"//mlir:LinalgStructuredOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "LinalgOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=linalg",
|
||
|
],
|
||
|
"mlir/dialects/_linalg_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=linalg",
|
||
|
],
|
||
|
"mlir/dialects/_linalg_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/LinalgOps.td",
|
||
|
deps = [
|
||
|
":LinalgOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LinalgOpsPyFiles",
|
||
|
srcs = [
|
||
|
":LinalgOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LinalgOpsPackagePyFiles",
|
||
|
srcs = glob(["mlir/dialects/linalg/*.py"]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LinalgOpsPackageOpDSLPyFiles",
|
||
|
srcs = glob(["mlir/dialects/linalg/opdsl/*.py"]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LinalgOpsPackageOpDSLLangPyFiles",
|
||
|
srcs = glob(["mlir/dialects/linalg/opdsl/lang/*.py"]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LinalgOpsPackageOpDSLOpsPyFiles",
|
||
|
srcs = glob(["mlir/dialects/linalg/opdsl/ops/*.py"]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LinalgOpsPackagePassesPyFiles",
|
||
|
srcs = glob(["mlir/dialects/linalg/passes/*.py"]),
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# LLVM dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "LLVMOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=llvm",
|
||
|
],
|
||
|
"mlir/dialects/_llvm_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=llvm",
|
||
|
],
|
||
|
"mlir/dialects/_llvm_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/LLVMOps.td",
|
||
|
deps = [
|
||
|
"//mlir:LLVMOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "LLVMOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/llvm.py",
|
||
|
":LLVMOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Arith dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "ArithOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=arith",
|
||
|
],
|
||
|
"mlir/dialects/_arith_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=arith",
|
||
|
],
|
||
|
"mlir/dialects/_arith_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/ArithOps.td",
|
||
|
deps = [
|
||
|
"//mlir:ArithOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ArithOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/arith.py",
|
||
|
":ArithOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Bufferization dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "BufferizationOpsPyTdFiles",
|
||
|
srcs = [],
|
||
|
includes = ["../include"],
|
||
|
deps = [
|
||
|
"//mlir:BufferizableOpInterfaceTdFiles",
|
||
|
"//mlir:BufferizationEnumsTdFiles",
|
||
|
"//mlir:BufferizationOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "BufferizationEnumPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=bufferization",
|
||
|
],
|
||
|
"mlir/dialects/_bufferization_enum_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/BufferizationEnums.td",
|
||
|
deps = [
|
||
|
":BufferizationOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "BufferizationOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=bufferization",
|
||
|
],
|
||
|
"mlir/dialects/_bufferization_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/BufferizationOps.td",
|
||
|
deps = [
|
||
|
":BufferizationOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "BufferizationOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/bufferization.py",
|
||
|
":BufferizationEnumPyGen",
|
||
|
":BufferizationOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Complex dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "ComplexOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=complex",
|
||
|
],
|
||
|
"mlir/dialects/_complex_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/ComplexOps.td",
|
||
|
deps = [
|
||
|
"//mlir:ComplexOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ComplexOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/complex.py",
|
||
|
":ComplexOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# ControlFlow dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "ControlFlowOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=cf",
|
||
|
],
|
||
|
"mlir/dialects/_cf_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/ControlFlowOps.td",
|
||
|
deps = [
|
||
|
"//mlir:ControlFlowOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ControlFlowOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/cf.py",
|
||
|
":ControlFlowOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Math dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "MathOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=math",
|
||
|
],
|
||
|
"mlir/dialects/_math_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/MathOps.td",
|
||
|
deps = [
|
||
|
"//mlir:MathOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "MathOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/math.py",
|
||
|
":MathOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# MemRef dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "MemRefOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=memref",
|
||
|
],
|
||
|
"mlir/dialects/_memref_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/MemRefOps.td",
|
||
|
deps = [
|
||
|
"//mlir:MemRefOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "MemRefOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/memref.py",
|
||
|
":MemRefOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# MLProgram dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "MLProgramOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=ml_program",
|
||
|
],
|
||
|
"mlir/dialects/_ml_program_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/MLProgramOps.td",
|
||
|
deps = [
|
||
|
"//mlir:MLProgramOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "MLProgramOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/ml_program.py",
|
||
|
":MLProgramOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# OpenMP dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "OpenMPOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=omp",
|
||
|
],
|
||
|
"mlir/dialects/_omp_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/OpenMPOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:OpenMPOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "OpenMPOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/openmp.py",
|
||
|
":OpenMPOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# PDL dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "PDLPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=pdl",
|
||
|
],
|
||
|
"mlir/dialects/_pdl_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/PDLOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:PDLDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "PDLPyIFiles",
|
||
|
srcs = [
|
||
|
"mlir/_mlir_libs/_mlir/dialects/pdl.pyi",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "PDLPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/pdl.py",
|
||
|
":PDLPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# PythonTest dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "PythonTestPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=python_test",
|
||
|
],
|
||
|
"mlir/dialects/_python_test_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "//mlir/test/python:python_test_ops.td",
|
||
|
deps = [
|
||
|
"//mlir:InferTypeOpInterfaceTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "PythonTestPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/python_test.py",
|
||
|
":PythonTestPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Quant dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
filegroup(
|
||
|
name = "QuantPyIFiles",
|
||
|
srcs = [
|
||
|
"mlir/_mlir_libs/_mlir/dialects/quant.pyi",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "QuantPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/quant.py",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# GPU dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "GPUOpsPyTdFiles",
|
||
|
srcs = [],
|
||
|
includes = ["../include"],
|
||
|
deps = [
|
||
|
"//mlir:GPUOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "GPUOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=gpu",
|
||
|
],
|
||
|
"mlir/dialects/_gpu_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=gpu",
|
||
|
],
|
||
|
"mlir/dialects/_gpu_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/GPUOps.td",
|
||
|
deps = [
|
||
|
":GPUOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "GPUOpsPyFiles",
|
||
|
srcs = [
|
||
|
":GPUOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "GPUOpsPackagePyFiles",
|
||
|
srcs = glob(["mlir/dialects/gpu/*.py"]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "GPUOpsPackagePassesPyFiles",
|
||
|
srcs = glob(["mlir/dialects/gpu/passes/*.py"]),
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# NVGPU dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "NVGPUOpsPyTdFiles",
|
||
|
srcs = [],
|
||
|
includes = ["../include"],
|
||
|
deps = [
|
||
|
"//mlir:NVGPUTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "NVGPUOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=nvgpu",
|
||
|
],
|
||
|
"mlir/dialects/_nvgpu_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=nvgpu",
|
||
|
],
|
||
|
"mlir/dialects/_nvgpu_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/NVGPUOps.td",
|
||
|
deps = [
|
||
|
":NVGPUOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "NVGPUOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/nvgpu.py",
|
||
|
":NVGPUOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# NVVM dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "NVVMOpsPyTdFiles",
|
||
|
srcs = [],
|
||
|
includes = ["../include"],
|
||
|
deps = [
|
||
|
"//mlir:NVVMOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "NVVMOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=nvvm",
|
||
|
],
|
||
|
"mlir/dialects/_nvvm_enum_gen.py",
|
||
|
),
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=nvvm",
|
||
|
],
|
||
|
"mlir/dialects/_nvvm_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/NVVMOps.td",
|
||
|
deps = [
|
||
|
":NVVMOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "NVVMOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/nvvm.py",
|
||
|
":NVVMOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# ROCDL dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "ROCDLOpsPyTdFiles",
|
||
|
srcs = [],
|
||
|
includes = ["../include"],
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:ROCDLOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "ROCDLOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=rocdl",
|
||
|
],
|
||
|
"mlir/dialects/_rocdl_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/ROCDLOps.td",
|
||
|
deps = [
|
||
|
":ROCDLOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ROCDLOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/rocdl.py",
|
||
|
":ROCDLOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# SCF dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "SCFPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=scf",
|
||
|
],
|
||
|
"mlir/dialects/_scf_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/SCFOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:SCFTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "SCFPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/scf.py",
|
||
|
":SCFPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Shape dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "ShapeOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=shape",
|
||
|
],
|
||
|
"mlir/dialects/_shape_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/ShapeOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:ShapeOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "ShapeOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/shape.py",
|
||
|
":ShapeOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Func dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "FuncPyTdFiles",
|
||
|
srcs = [
|
||
|
],
|
||
|
deps = [
|
||
|
"//mlir:FuncTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "FuncPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=func",
|
||
|
],
|
||
|
"mlir/dialects/_func_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/FuncOps.td",
|
||
|
deps = [
|
||
|
"//mlir:FuncTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "FuncPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/func.py",
|
||
|
":FuncPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# SparseTensor dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "SparseTensorOpsPyTdFiles",
|
||
|
srcs = [
|
||
|
],
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:SparseTensorTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "SparseTensorEnumPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=sparse_tensor",
|
||
|
],
|
||
|
"mlir/dialects/_sparse_tensor_enum_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/SparseTensorAttrDefs.td",
|
||
|
deps = [
|
||
|
":SparseTensorOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "SparseTensorOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=sparse_tensor",
|
||
|
],
|
||
|
"mlir/dialects/_sparse_tensor_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/SparseTensorOps.td",
|
||
|
deps = [
|
||
|
":SparseTensorOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "SparseTensorOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/sparse_tensor.py",
|
||
|
":SparseTensorEnumPyGen",
|
||
|
":SparseTensorOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# SPIRV dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "SPIRVOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=spirv",
|
||
|
],
|
||
|
"mlir/dialects/_spirv_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/SPIRVOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:SPIRVOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "SPIRVOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/spirv.py",
|
||
|
":SPIRVOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Tensor dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
td_library(
|
||
|
name = "TensorOpsPyTdFiles",
|
||
|
srcs = [
|
||
|
],
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TensorOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "TensorOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=tensor",
|
||
|
],
|
||
|
"mlir/dialects/_tensor_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/TensorOps.td",
|
||
|
deps = [
|
||
|
":TensorOpsPyTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "TensorOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/tensor.py",
|
||
|
":TensorOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Tosa dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "TosaOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=tosa",
|
||
|
],
|
||
|
"mlir/dialects/_tosa_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/TosaOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TosaDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "TosaOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/tosa.py",
|
||
|
":TosaOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Transform dialect and extensions.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "TransformEnumPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
],
|
||
|
"mlir/dialects/_transform_enum_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/TransformAttrs.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "TransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
],
|
||
|
"mlir/dialects/_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/TransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "BufferizationTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=bufferization_transform",
|
||
|
],
|
||
|
"mlir/dialects/_bufferization_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/BufferizationTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:BufferizationTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "GPUTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=gpu_transform",
|
||
|
],
|
||
|
"mlir/dialects/_gpu_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/GPUTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:GPUTransformOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "StructureTransformEnumPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
],
|
||
|
"mlir/dialects/_structured_transform_enum_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/LinalgStructuredTransformEnums.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:LinalgTransformOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "StructuredTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=structured_transform",
|
||
|
],
|
||
|
"mlir/dialects/_structured_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/LinalgStructuredTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:LinalgTransformOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "LoopTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=loop_transform",
|
||
|
],
|
||
|
"mlir/dialects/_loop_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/SCFLoopTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:SCFTransformOpsTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "MemRefTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=memref_transform",
|
||
|
],
|
||
|
"mlir/dialects/_memref_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/MemRefTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:MemRefTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "NVGPUTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=nvgpu_transform",
|
||
|
],
|
||
|
"mlir/dialects/_nvgpu_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/NVGPUTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:NVGPUTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "PDLTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=transform_pdl_extension",
|
||
|
],
|
||
|
"mlir/dialects/_transform_pdl_extension_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/TransformPDLExtensionOps.td",
|
||
|
deps = [
|
||
|
"//mlir:CallInterfacesTdFiles",
|
||
|
"//mlir:FunctionInterfacesTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
"//mlir:TransformPDLExtensionTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "SparseTensorTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=sparse_tensor_transform",
|
||
|
],
|
||
|
"mlir/dialects/_sparse_tensor_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/SparseTensorTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:SparseTensorTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "TensorTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=tensor_transform",
|
||
|
],
|
||
|
"mlir/dialects/_tensor_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/TensorTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:TensorTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "VectorTransformEnumPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
],
|
||
|
"mlir/dialects/_vector_transform_enum_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/VectorTransformsBase.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
"//mlir:VectorTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "VectorTransformOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=transform",
|
||
|
"-dialect-extension=vector_transform",
|
||
|
],
|
||
|
"mlir/dialects/_vector_transform_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/VectorTransformOps.td",
|
||
|
deps = [
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:TransformDialectTdFiles",
|
||
|
"//mlir:VectorTransformOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "TransformOpsPyFiles",
|
||
|
srcs = [
|
||
|
":BufferizationTransformOpsPyGen",
|
||
|
":GPUTransformOpsPyGen",
|
||
|
":LoopTransformOpsPyGen",
|
||
|
":MemRefTransformOpsPyGen",
|
||
|
":NVGPUTransformOpsPyGen",
|
||
|
":PDLTransformOpsPyGen",
|
||
|
":SparseTensorTransformOpsPyGen",
|
||
|
":StructureTransformEnumPyGen",
|
||
|
":StructuredTransformOpsPyGen",
|
||
|
":TensorTransformOpsPyGen",
|
||
|
":TransformEnumPyGen",
|
||
|
":TransformOpsPyGen",
|
||
|
":VectorTransformEnumPyGen",
|
||
|
":VectorTransformOpsPyGen",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "TransformOpsPackagePyFiles",
|
||
|
srcs = glob(["mlir/dialects/transform/*.py"]),
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "TransformExtrasPackagePyFiles",
|
||
|
srcs = glob(["mlir/dialects/transform/extras/*.py"]),
|
||
|
)
|
||
|
|
||
|
##---------------------------------------------------------------------------##
|
||
|
# Vector dialect.
|
||
|
##---------------------------------------------------------------------------##
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "VectorOpsPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-op-bindings",
|
||
|
"-bind-dialect=vector",
|
||
|
],
|
||
|
"mlir/dialects/_vector_ops_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/VectorOps.td",
|
||
|
deps = [
|
||
|
"//mlir:ArithOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:VectorOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
gentbl_filegroup(
|
||
|
name = "VectorAttributesPyGen",
|
||
|
tbl_outs = [
|
||
|
(
|
||
|
[
|
||
|
"-gen-python-enum-bindings",
|
||
|
"-bind-dialect=vector",
|
||
|
],
|
||
|
"mlir/dialects/_vector_enum_gen.py",
|
||
|
),
|
||
|
],
|
||
|
tblgen = "//mlir:mlir-tblgen",
|
||
|
td_file = "mlir/dialects/VectorAttributes.td",
|
||
|
deps = [
|
||
|
"//mlir:ArithOpsTdFiles",
|
||
|
"//mlir:OpBaseTdFiles",
|
||
|
"//mlir:VectorOpsTdFiles",
|
||
|
],
|
||
|
)
|
||
|
|
||
|
filegroup(
|
||
|
name = "VectorOpsPyFiles",
|
||
|
srcs = [
|
||
|
"mlir/dialects/vector.py",
|
||
|
":VectorAttributesPyGen",
|
||
|
":VectorOpsPyGen",
|
||
|
],
|
||
|
)
|