aboutsummaryrefslogtreecommitdiff
path: root/mlir/lib/IR/OperationSupport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mlir/lib/IR/OperationSupport.cpp')
-rw-r--r--mlir/lib/IR/OperationSupport.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/mlir/lib/IR/OperationSupport.cpp b/mlir/lib/IR/OperationSupport.cpp
index 394ac77..2a37f38 100644
--- a/mlir/lib/IR/OperationSupport.cpp
+++ b/mlir/lib/IR/OperationSupport.cpp
@@ -406,15 +406,13 @@ OperandRangeRange::OperandRangeRange(OperandRange operands,
OperandRange OperandRangeRange::join() const {
const OwnerT &owner = getBase();
ArrayRef<int32_t> sizeData = llvm::cast<DenseI32ArrayAttr>(owner.second);
- return OperandRange(owner.first,
- std::accumulate(sizeData.begin(), sizeData.end(), 0));
+ return OperandRange(owner.first, llvm::sum_of(sizeData));
}
OperandRange OperandRangeRange::dereference(const OwnerT &object,
ptrdiff_t index) {
ArrayRef<int32_t> sizeData = llvm::cast<DenseI32ArrayAttr>(object.second);
- uint32_t startIndex =
- std::accumulate(sizeData.begin(), sizeData.begin() + index, 0);
+ uint32_t startIndex = llvm::sum_of(sizeData.take_front(index));
return OperandRange(object.first + startIndex, *(sizeData.begin() + index));
}
@@ -565,8 +563,7 @@ MutableOperandRange MutableOperandRangeRange::dereference(const OwnerT &object,
ptrdiff_t index) {
ArrayRef<int32_t> sizeData =
llvm::cast<DenseI32ArrayAttr>(object.second.getValue());
- uint32_t startIndex =
- std::accumulate(sizeData.begin(), sizeData.begin() + index, 0);
+ uint32_t startIndex = llvm::sum_of(sizeData.take_front(index));
return object.first.slice(
startIndex, *(sizeData.begin() + index),
MutableOperandRange::OperandSegment(index, object.second));