From c7b34b0b44aeb3560db5143435824746edeb9a06 Mon Sep 17 00:00:00 2001 From: Kazu Hirata Date: Thu, 26 Jun 2025 23:38:20 -0700 Subject: [PATCH] [mlir] Use a new constructor of ArrayRef (NFC) (#146009) ArrayRef now has a new constructor that takes a parameter whose type has data() and size(). This patch migrates: ArrayRef(X.data(), X.size() to: ArrayRef(X) --- mlir/lib/AsmParser/AttributeParser.cpp | 2 +- mlir/lib/Target/LLVMIR/ModuleTranslation.cpp | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/mlir/lib/AsmParser/AttributeParser.cpp b/mlir/lib/AsmParser/AttributeParser.cpp index 2474e88373e0..dcb21e7d0831 100644 --- a/mlir/lib/AsmParser/AttributeParser.cpp +++ b/mlir/lib/AsmParser/AttributeParser.cpp @@ -717,7 +717,7 @@ DenseElementsAttr TensorLiteralParser::getHexAttr(SMLoc loc, ShapedType type) { if (parseElementAttrHexValues(p, *hexStorage, data)) return nullptr; - ArrayRef rawData(data.data(), data.size()); + ArrayRef rawData(data); bool detectedSplat = false; if (!DenseElementsAttr::isValidRawBuffer(type, rawData, detectedSplat)) { p.emitError(loc) << "elements hex data size is invalid for provided type: " diff --git a/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp b/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp index 1253c2f83b07..8dcffc66f7f7 100644 --- a/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp +++ b/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp @@ -727,10 +727,8 @@ llvm::Constant *mlir::LLVM::detail::getLLVMConstant( } if (auto stringAttr = dyn_cast(attr)) { - return llvm::ConstantDataArray::get( - moduleTranslation.getLLVMContext(), - ArrayRef{stringAttr.getValue().data(), - stringAttr.getValue().size()}); + return llvm::ConstantDataArray::get(moduleTranslation.getLLVMContext(), + ArrayRef{stringAttr.getValue()}); } // Handle arrays of structs that cannot be represented as DenseElementsAttr