brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · 853db9d Raw
71 lines · plain
1# Description:2#   MLIR Tutorial3 4load("@rules_cc//cc:defs.bzl", "cc_binary")5load("//mlir:tblgen.bzl", "gentbl_cc_library", "td_library")6 7licenses(["notice"])8 9package(default_visibility = ["//visibility:public"])10 11td_library(12    name = "ToyOpsTdFiles",13    srcs = [14        "include/toy/Ops.td",15    ],16    includes = ["include"],17    deps = [18        "//mlir:FunctionInterfacesTdFiles",19        "//mlir:OpBaseTdFiles",20        "//mlir:SideEffectInterfacesTdFiles",21    ],22)23 24gentbl_cc_library(25    name = "ToyOpsIncGen",26    tbl_outs = {27        "include/toy/Ops.h.inc": ["-gen-op-decls"],28        "include/toy/Ops.cpp.inc": ["-gen-op-defs"],29        "include/toy/Dialect.h.inc": ["-gen-dialect-decls"],30        "include/toy/Dialect.cpp.inc": ["-gen-dialect-defs"],31    },32    tblgen = "//mlir:mlir-tblgen",33    td_file = "include/toy/Ops.td",34    deps = [":ToyOpsTdFiles"],35)36 37gentbl_cc_library(38    name = "ToyCombineIncGen",39    strip_include_prefix = "mlir",40    tbl_outs = {"mlir/ToyCombine.inc": ["-gen-rewriters"]},41    tblgen = "//mlir:mlir-tblgen",42    td_file = "mlir/ToyCombine.td",43    deps = [":ToyOpsTdFiles"],44)45 46cc_binary(47    name = "toyc-ch3",48    srcs = [49        "mlir/Dialect.cpp",50        "mlir/MLIRGen.cpp",51        "mlir/ToyCombine.cpp",52        "parser/AST.cpp",53        "toyc.cpp",54    ] + glob(["include/toy/*.h"]),55    includes = ["include/"],56    deps = [57        ":ToyCombineIncGen",58        ":ToyOpsIncGen",59        "//llvm:Support",60        "//mlir:Analysis",61        "//mlir:BytecodeReader",62        "//mlir:FunctionInterfaces",63        "//mlir:IR",64        "//mlir:Parser",65        "//mlir:Pass",66        "//mlir:SideEffectInterfaces",67        "//mlir:Support",68        "//mlir:Transforms",69    ],70)71