diff --git a/tensorflow/compiler/mlir/hlo/BUILD b/tensorflow/compiler/mlir/hlo/BUILD index 06ee0c231b9..34587d23f63 100644 --- a/tensorflow/compiler/mlir/hlo/BUILD +++ b/tensorflow/compiler/mlir/hlo/BUILD @@ -664,6 +664,7 @@ cc_library( "@llvm-project//mlir:Shape", "@llvm-project//mlir:ShapeTransforms", "@llvm-project//mlir:StandardOps", + "@llvm-project//mlir:StandardOpsTransforms", "@llvm-project//mlir:Support", "@llvm-project//mlir:Transforms", ], diff --git a/tensorflow/compiler/mlir/hlo/lib/Dialect/mhlo/transforms/hlo_legalize_to_lhlo.cc b/tensorflow/compiler/mlir/hlo/lib/Dialect/mhlo/transforms/hlo_legalize_to_lhlo.cc index 996bd10b4f9..4df0147a063 100644 --- a/tensorflow/compiler/mlir/hlo/lib/Dialect/mhlo/transforms/hlo_legalize_to_lhlo.cc +++ b/tensorflow/compiler/mlir/hlo/lib/Dialect/mhlo/transforms/hlo_legalize_to_lhlo.cc @@ -23,6 +23,7 @@ limitations under the License. #include "mlir/Dialect/Shape/IR/Shape.h" #include "mlir/Dialect/Shape/Transforms/Passes.h" #include "mlir/Dialect/StandardOps/IR/Ops.h" +#include "mlir/Dialect/StandardOps/Transforms/FuncConversions.h" #include "mlir/IR/AffineMap.h" #include "mlir/IR/Attributes.h" #include "mlir/IR/BlockAndValueMapping.h" @@ -578,9 +579,8 @@ struct HloLegalizeToLhlo }); populateHLOToLHLOConversionPattern(&context, &converter, &patterns); - populateWithBufferizeOpConversionPatterns( - &context, converter, patterns); + populateFuncOpTypeConversionPattern(patterns, &context, converter); + populateCallOpTypeConversionPattern(patterns, &context, converter); populateShapeStructuralTypeConversionsAndLegality(&context, converter, patterns, target); if (failed(applyPartialConversion(getOperation(), target, diff --git a/tensorflow/compiler/mlir/tools/kernel_gen/transforms/bufferize_pass.cc b/tensorflow/compiler/mlir/tools/kernel_gen/transforms/bufferize_pass.cc index 36860f3aef9..2fc01f50789 100644 --- a/tensorflow/compiler/mlir/tools/kernel_gen/transforms/bufferize_pass.cc +++ b/tensorflow/compiler/mlir/tools/kernel_gen/transforms/bufferize_pass.cc @@ -23,6 +23,8 @@ limitations under the License. #include "mlir/Dialect/Shape/IR/Shape.h" // from @llvm-project #include "mlir/Dialect/Shape/Transforms/Passes.h" // from @llvm-project #include "mlir/Dialect/StandardOps/IR/Ops.h" // from @llvm-project +#include "mlir/Dialect/StandardOps/Transforms/DecomposeCallGraphTypes.h" // from @llvm-project +#include "mlir/Dialect/StandardOps/Transforms/FuncConversions.h" // from @llvm-project #include "mlir/Dialect/StandardOps/Transforms/Passes.h" // from @llvm-project #include "mlir/IR/Function.h" // from @llvm-project #include "mlir/IR/MLIRContext.h" // from @llvm-project @@ -107,9 +109,11 @@ struct BufferizePass : public BufferizePassBase { OwningRewritePatternList patterns; mhlo::populateHLOToLHLOConversionPattern(&context, &converter, &patterns); - populateWithBufferizeOpConversionPatterns( - &context, converter, patterns); + populateFuncOpTypeConversionPattern(patterns, &context, converter); + populateCallOpTypeConversionPattern(patterns, &context, converter); + ValueDecomposer decomposer; + populateDecomposeCallGraphTypesPatterns(&context, converter, decomposer, + patterns); populateStdBufferizePatterns(&context, converter, patterns); populateExtraStdBufferizePattern(&context, &converter, &patterns); populateShapeStructuralTypeConversionsAndLegality(&context, converter, diff --git a/tensorflow/workspace.bzl b/tensorflow/workspace.bzl index 4660575028f..c32dca2d578 100755 --- a/tensorflow/workspace.bzl +++ b/tensorflow/workspace.bzl @@ -686,8 +686,8 @@ def tf_repositories(path_prefix = "", tf_repo_name = ""): ) # Check out LLVM and MLIR from llvm-project. - LLVM_COMMIT = "65f3e121fe4f80e2b178fa157ef1346043555b4b" - LLVM_SHA256 = "483154bacee5852087821850a64d43ebefd088a2e19f3eeb43391cafea3749d8" + LLVM_COMMIT = "499bce3abab8a362b9b4197944bd40b826c736c4" + LLVM_SHA256 = "a154965dfeb2b5963acc2193bc334ce90b314acbe48430ba310d8a7c7a20de8b" LLVM_URLS = [ "https://storage.googleapis.com/mirror.tensorflow.org/github.com/llvm/llvm-project/archive/{commit}.tar.gz".format(commit = LLVM_COMMIT), "https://github.com/llvm/llvm-project/archive/{commit}.tar.gz".format(commit = LLVM_COMMIT), diff --git a/third_party/mlir/BUILD b/third_party/mlir/BUILD index d380b40affb..0153c3f45ff 100644 --- a/third_party/mlir/BUILD +++ b/third_party/mlir/BUILD @@ -3699,7 +3699,7 @@ gentbl( "include/mlir/Dialect/OpenMP/OpenMPOpsEnums.cpp.inc", ), ( - "-gen-dialect-decls", + "-gen-dialect-decls -dialect=omp", "include/mlir/Dialect/OpenMP/OpenMPOpsDialect.h.inc", ), (