[flang-commits] [flang] [flang] Construct SmallVector with ArrayRef (NFC) (PR #101901)
Kazu Hirata via flang-commits
flang-commits at lists.llvm.org
Sun Aug 4 12:01:20 PDT 2024
https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/101901
None
>From e69211f2f590435bb4558c9049fd103a3b9af98f Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sun, 4 Aug 2024 11:55:39 -0700
Subject: [PATCH] [flang] Construct SmallVector with ArrayRef (NFC)
---
flang/include/flang/Lower/CallInterface.h | 2 +-
flang/include/flang/Lower/IterationSpace.h | 2 +-
flang/include/flang/Optimizer/Builder/BoxValue.h | 5 ++---
flang/include/flang/Optimizer/Support/InternalNames.h | 5 ++---
flang/lib/Lower/ConvertArrayConstructor.cpp | 6 ++----
flang/lib/Lower/IterationSpace.cpp | 2 +-
flang/lib/Optimizer/Transforms/AffineDemotion.cpp | 5 ++---
flang/unittests/Optimizer/InternalNamesTest.cpp | 5 ++---
8 files changed, 13 insertions(+), 19 deletions(-)
diff --git a/flang/include/flang/Lower/CallInterface.h b/flang/include/flang/Lower/CallInterface.h
index a11e81b6593de..9a688330e8bd2 100644
--- a/flang/include/flang/Lower/CallInterface.h
+++ b/flang/include/flang/Lower/CallInterface.h
@@ -138,7 +138,7 @@ class CallInterface {
FirPlaceHolder(mlir::Type t, int passedPosition, Property p,
llvm::ArrayRef<mlir::NamedAttribute> attrs)
: type{t}, passedEntityPosition{passedPosition}, property{p},
- attributes{attrs.begin(), attrs.end()} {}
+ attributes{attrs} {}
/// Type for this input/output
mlir::Type type;
/// Position of related passedEntity in passedArguments.
diff --git a/flang/include/flang/Lower/IterationSpace.h b/flang/include/flang/Lower/IterationSpace.h
index 1359e22e23edd..ab52821432fb6 100644
--- a/flang/include/flang/Lower/IterationSpace.h
+++ b/flang/include/flang/Lower/IterationSpace.h
@@ -56,7 +56,7 @@ class IterationSpace {
explicit IterationSpace(const IterationSpace &from,
llvm::ArrayRef<mlir::Value> idxs)
: inArg(from.inArg), outRes(from.outRes), element(from.element),
- indices(idxs.begin(), idxs.end()) {}
+ indices(idxs) {}
/// Create a copy of the \p from IterationSpace and prepend the \p prefix
/// values and append the \p suffix values, respectively.
diff --git a/flang/include/flang/Optimizer/Builder/BoxValue.h b/flang/include/flang/Optimizer/Builder/BoxValue.h
index 9fdaa0b197179..5f9834bfb8ec9 100644
--- a/flang/include/flang/Optimizer/Builder/BoxValue.h
+++ b/flang/include/flang/Optimizer/Builder/BoxValue.h
@@ -127,8 +127,7 @@ class AbstractArrayBox {
AbstractArrayBox() = default;
AbstractArrayBox(llvm::ArrayRef<mlir::Value> extents,
llvm::ArrayRef<mlir::Value> lbounds)
- : extents{extents.begin(), extents.end()}, lbounds{lbounds.begin(),
- lbounds.end()} {}
+ : extents{extents}, lbounds{lbounds} {}
// Every array has extents that describe its shape.
const llvm::SmallVectorImpl<mlir::Value> &getExtents() const {
@@ -296,7 +295,7 @@ class BoxValue : public AbstractIrBox {
llvm::ArrayRef<mlir::Value> explicitParams,
llvm::ArrayRef<mlir::Value> explicitExtents = {})
: AbstractIrBox{addr, lbounds, explicitExtents},
- explicitParams{explicitParams.begin(), explicitParams.end()} {
+ explicitParams{explicitParams} {
assert(verify());
}
// TODO: check contiguous attribute of addr
diff --git a/flang/include/flang/Optimizer/Support/InternalNames.h b/flang/include/flang/Optimizer/Support/InternalNames.h
index ff23510922372..9e13b4a7668b7 100644
--- a/flang/include/flang/Optimizer/Support/InternalNames.h
+++ b/flang/include/flang/Optimizer/Support/InternalNames.h
@@ -56,9 +56,8 @@ struct NameUniquer {
DeconstructedName(llvm::ArrayRef<std::string> modules,
llvm::ArrayRef<std::string> procs, std::int64_t blockId,
llvm::StringRef name, llvm::ArrayRef<std::int64_t> kinds)
- : modules{modules.begin(), modules.end()}, procs{procs.begin(),
- procs.end()},
- blockId{blockId}, name{name}, kinds{kinds.begin(), kinds.end()} {}
+ : modules{modules}, procs{procs}, blockId{blockId}, name{name},
+ kinds{kinds} {}
llvm::SmallVector<std::string> modules;
llvm::SmallVector<std::string> procs;
diff --git a/flang/lib/Lower/ConvertArrayConstructor.cpp b/flang/lib/Lower/ConvertArrayConstructor.cpp
index 3c43cd20eb080..7e2142693eac5 100644
--- a/flang/lib/Lower/ConvertArrayConstructor.cpp
+++ b/flang/lib/Lower/ConvertArrayConstructor.cpp
@@ -194,8 +194,7 @@ class AsElementalStrategy : public StrategyBase {
fir::SequenceType declaredType, mlir::Value extent,
llvm::ArrayRef<mlir::Value> lengths)
: StrategyBase{stmtCtx, symMap}, shape{builder.genShape(loc, {extent})},
- lengthParams{lengths.begin(), lengths.end()},
- exprType{getExprType(declaredType)} {}
+ lengthParams{lengths}, exprType{getExprType(declaredType)} {}
static hlfir::ExprType getExprType(fir::SequenceType declaredType) {
// Note: 7.8 point 4: the dynamic type of an array constructor is its static
@@ -331,8 +330,7 @@ class RuntimeTempStrategy : public StrategyBase {
// Prepare the initial state of the allocatable descriptor with a
// deallocated status and all the available knowledge about the extent
// and length parameters.
- llvm::SmallVector<mlir::Value> emboxLengths(lengths.begin(),
- lengths.end());
+ llvm::SmallVector<mlir::Value> emboxLengths(lengths);
if (!extent)
extent = builder.createIntegerConstant(loc, builder.getIndexType(), 0);
if (missingLengthParameters) {
diff --git a/flang/lib/Lower/IterationSpace.cpp b/flang/lib/Lower/IterationSpace.cpp
index 9303536403837..63011483022b7 100644
--- a/flang/lib/Lower/IterationSpace.cpp
+++ b/flang/lib/Lower/IterationSpace.cpp
@@ -59,7 +59,7 @@ class ArrayBaseFinder {
using RT = bool;
ArrayBaseFinder(llvm::ArrayRef<Fortran::lower::FrontEndSymbol> syms)
- : controlVars(syms.begin(), syms.end()) {}
+ : controlVars(syms) {}
template <typename T>
void operator()(const T &x) {
diff --git a/flang/lib/Optimizer/Transforms/AffineDemotion.cpp b/flang/lib/Optimizer/Transforms/AffineDemotion.cpp
index c416302d671eb..d45f855c9078e 100644
--- a/flang/lib/Optimizer/Transforms/AffineDemotion.cpp
+++ b/flang/lib/Optimizer/Transforms/AffineDemotion.cpp
@@ -125,9 +125,8 @@ class ConvertConversion : public mlir::OpRewritePattern<fir::ConvertOp> {
};
mlir::Type convertMemRef(mlir::MemRefType type) {
- return fir::SequenceType::get(
- SmallVector<int64_t>(type.getShape().begin(), type.getShape().end()),
- type.getElementType());
+ return fir::SequenceType::get(SmallVector<int64_t>(type.getShape()),
+ type.getElementType());
}
class StdAllocConversion : public mlir::OpRewritePattern<memref::AllocOp> {
diff --git a/flang/unittests/Optimizer/InternalNamesTest.cpp b/flang/unittests/Optimizer/InternalNamesTest.cpp
index 058bbeef9b007..ab0b91622980a 100644
--- a/flang/unittests/Optimizer/InternalNamesTest.cpp
+++ b/flang/unittests/Optimizer/InternalNamesTest.cpp
@@ -19,9 +19,8 @@ struct DeconstructedName {
DeconstructedName(llvm::ArrayRef<std::string> modules,
llvm::ArrayRef<std::string> procs, std::int64_t blockId,
llvm::StringRef name, llvm::ArrayRef<std::int64_t> kinds)
- : modules{modules.begin(), modules.end()}, procs{procs.begin(),
- procs.end()},
- blockId{blockId}, name{name}, kinds{kinds.begin(), kinds.end()} {}
+ : modules{modules}, procs{procs}, blockId{blockId}, name{name},
+ kinds{kinds} {}
bool isObjEqual(const NameUniquer::DeconstructedName &actualObj) {
return actualObj.modules == modules && actualObj.procs == procs &&
More information about the flang-commits
mailing list