From f762dd80e96a3ea6197e91b092f1c7953166aa1d Mon Sep 17 00:00:00 2001 From: "A. Unique TensorFlower" <gardener@tensorflow.org> Date: Tue, 23 Feb 2021 04:37:31 -0800 Subject: [PATCH] Integrate LLVM at llvm/llvm-project@6c9541d4ddfd Updates LLVM usage to match [6c9541d4ddfd](https://github.com/llvm/llvm-project/commit/6c9541d4ddfd) PiperOrigin-RevId: 359020255 Change-Id: Ibe6e04cab675c15a9477dc08f6072dd7a9f4e1bb --- third_party/llvm/workspace.bzl | 4 +-- third_party/mlir/BUILD | 58 ++++++++++++++++++++++++++++------ third_party/mlir/linalggen.bzl | 2 +- 3 files changed, 51 insertions(+), 13 deletions(-) diff --git a/third_party/llvm/workspace.bzl b/third_party/llvm/workspace.bzl index b5926bdf38a..b0cca370aeb 100644 --- a/third_party/llvm/workspace.bzl +++ b/third_party/llvm/workspace.bzl @@ -4,8 +4,8 @@ load("//third_party:repo.bzl", "tf_http_archive") def repo(name): """Imports LLVM.""" - LLVM_COMMIT = "557d2ade016f3e228e90aab317b94f804e0bc1cd" - LLVM_SHA256 = "7bf513f0f0ef6c3444d10572e10ed98c101992774e9aee707a10faa08b2c3763" + LLVM_COMMIT = "6c9541d4ddfdab0dcb11436485b466a759c3126c" + LLVM_SHA256 = "e5c4357c56d6d9e93e596e95fe029b4a3e18de23ff306d34996cc7b7cc3784df" tf_http_archive( name = name, diff --git a/third_party/mlir/BUILD b/third_party/mlir/BUILD index 5f2dd8b75cd..9d800f875d2 100644 --- a/third_party/mlir/BUILD +++ b/third_party/mlir/BUILD @@ -4206,9 +4206,9 @@ cc_binary( cc_binary( name = "mlir-linalg-ods-gen", - srcs = glob([ + srcs = [ "tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp", - ]), + ], linkopts = [ "-lm", "-lpthread", @@ -4222,6 +4222,25 @@ cc_binary( ], ) +cc_binary( + name = "mlir-linalg-ods-yaml-gen", + srcs = [ + "tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp", + ], + linkopts = [ + "-lm", + "-lpthread", + ], + deps = [ + ":IR", + ":Parser", + ":Support", + "@llvm-project//llvm:Support", + "@llvm-project//llvm:TableGen", + "@llvm-project//llvm:config", + ], +) + ## OpenACC dialect gentbl( @@ -4525,26 +4544,43 @@ gentbl( ) genlinalg( - name = "LinalgNamedStructuredOpsIncGen", + name = "LinalgNamedStructuredOpsTcIncGen", src = "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOpsSpec.tc", linalg_outs = [ ( - "-gen-impl", - "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.cpp.inc", + "-gen-impl -o=$@", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.tcgen.cpp.inc", ), ( - "-gen-ods-decl", - "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.td", + "-gen-ods-decl -o=$@", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.tcgen.td", ), ], linalggen = ":mlir-linalg-ods-gen", ) +genlinalg( + name = "LinalgNamedStructuredOpsYamlIncGen", + src = "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml", + linalg_outs = [ + ( + "-o-impl=$@", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yamlgen.cpp.inc", + ), + ( + "-o-ods-decl=$@", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yamlgen.td", + ), + ], + linalggen = ":mlir-linalg-ods-yaml-gen", +) + filegroup( name = "LinalgStructuredOpsTdFiles", srcs = [ "include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td", - "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.td", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.tcgen.td", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yamlgen.td", "include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td", "include/mlir/Interfaces/CopyOpInterface.td", "include/mlir/Interfaces/ViewLikeInterface.td", @@ -4571,7 +4607,8 @@ gentbl( td_file = "include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td", td_srcs = [ ":LinalgStructuredOpsTdFiles", - "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.td", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.tcgen.td", + "include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yamlgen.td", ], ) @@ -4746,7 +4783,8 @@ cc_library( ":IR", ":LinalgInterfaces", ":LinalgInterfacesIncGen", - ":LinalgNamedStructuredOpsIncGen", + ":LinalgNamedStructuredOpsTcIncGen", + ":LinalgNamedStructuredOpsYamlIncGen", ":LinalgOpsIncGen", ":LinalgSparseOpsIncGen", ":LinalgStructuredOpsIncGen", diff --git a/third_party/mlir/linalggen.bzl b/third_party/mlir/linalggen.bzl index 86cef1cb8d4..96d25458e7d 100644 --- a/third_party/mlir/linalggen.bzl +++ b/third_party/mlir/linalggen.bzl @@ -27,7 +27,7 @@ def genlinalg(name, linalggen, src, linalg_outs): srcs = [src], outs = [out], tools = [linalggen], - cmd = (" ".join(base_args) + " -o $@"), + cmd = (" ".join(base_args)), ) # List of opts that do not generate cc files.