From 34ef6a680590087ed79edbcaaf425179efb24abf Mon Sep 17 00:00:00 2001 From: Stephan Herhut Date: Mon, 16 Nov 2020 01:27:35 -0800 Subject: [PATCH] Use align and aliasing attribute name getters form LLVMDialect now that they are available. PiperOrigin-RevId: 342586230 Change-Id: I4ff8313baeeaa506f97fa78ebc3fb09d36a17936 --- .../transforms/tensorflow_abi_knowledge_propagation.cc | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/tensorflow/compiler/mlir/tools/kernel_gen/transforms/tensorflow_abi_knowledge_propagation.cc b/tensorflow/compiler/mlir/tools/kernel_gen/transforms/tensorflow_abi_knowledge_propagation.cc index b1e23309775..10705649e15 100644 --- a/tensorflow/compiler/mlir/tools/kernel_gen/transforms/tensorflow_abi_knowledge_propagation.cc +++ b/tensorflow/compiler/mlir/tools/kernel_gen/transforms/tensorflow_abi_knowledge_propagation.cc @@ -37,10 +37,6 @@ namespace { #define GEN_PASS_CLASSES #include "tensorflow/compiler/mlir/tools/kernel_gen/transforms/kernel_gen_passes.h.inc" -// TODO(herhut): Move upstream to MLIR. -static constexpr StringRef kLLVMAlignAttrName = "llvm.align"; -static constexpr StringRef kLLVMNoAliasAttrName = "llvm.noalias"; - struct PropagateTfAbiKnowledgeToKernelsPass : public PropagateTfAbiKnowledgeToKernelsBase< PropagateTfAbiKnowledgeToKernelsPass> { @@ -116,7 +112,7 @@ struct PropagateTfAbiKnowledgeToKernelsPass } inner_stride.replaceAllUsesWith(one); kernel.setArgAttr( - kernel_p + 1, kLLVMAlignAttrName, + kernel_p + 1, LLVM::LLVMDialect::getAlignAttrName(), b.getIndexAttr( tf_framework::TFFrameworkDialect::kAllocationAlignment)); } @@ -126,7 +122,8 @@ struct PropagateTfAbiKnowledgeToKernelsPass // but we could use the alias analysis from buffer placement here // to make sure. // Add the no_alias attribute to the correspondign pointer. - kernel.setArgAttr(kernel_p + 1, kLLVMNoAliasAttrName, + kernel.setArgAttr(kernel_p + 1, + LLVM::LLVMDialect::getNoAliasAttrName(), b.getBoolAttr(true)); } // Advance base, aligned, offset, strides and sizes many arguments.