76 lines · plain
1# Description:2# MLIR Tutorial3 4load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library")5load("//mlir:tblgen.bzl", "gentbl_cc_library", "td_library")6 7licenses(["notice"])8 9package(default_visibility = ["//visibility:public"])10 11td_library(12 name = "TransformTdFiles",13 srcs = [14 "include/MyExtension.td",15 ],16 includes = ["include"],17 deps = [18 "//mlir:OpBaseTdFiles",19 "//mlir:SideEffectInterfacesTdFiles",20 "//mlir:TransformDialectTdFiles",21 ],22)23 24gentbl_cc_library(25 name = "TransformIncGen",26 tbl_outs = [27 (28 ["-gen-op-decls"],29 "include/MyExtension.h.inc",30 ),31 (32 ["-gen-op-defs"],33 "include/MyExtension.cpp.inc",34 ),35 ],36 tblgen = "//mlir:mlir-tblgen",37 td_file = "include/MyExtension.td",38 deps = [":TransformTdFiles"],39)40 41cc_library(42 name = "MyExtension",43 srcs = glob(["lib/*.cpp"]),44 hdrs = glob(["include/*.h"]),45 includes = ["include"],46 deps = [47 ":TransformIncGen",48 "//llvm:Support",49 "//mlir:FuncDialect",50 "//mlir:IR",51 "//mlir:SCFDialect",52 "//mlir:SideEffectInterfaces",53 "//mlir:Support",54 "//mlir:TransformDialect",55 "//mlir:TransformDialectInterfaces",56 ],57)58 59cc_binary(60 name = "transform-opt-ch2",61 srcs = glob(["transform-opt/*.cpp"]),62 local_defines = ["MLIR_INCLUDE_TESTS"],63 deps = [64 ":MyExtension",65 "//mlir:AllExtensions",66 "//mlir:AllPassesAndDialects",67 "//mlir:IR",68 "//mlir:MlirOptLib",69 "//mlir:RegisterAllDialects",70 "//mlir:RegisterAllExtensions",71 "//mlir:TransformDialectTransforms",72 "//mlir:Transforms",73 "//mlir/test:TestTransformDialect",74 ],75)76