[Mlir-commits] [mlir] e73bb4f - [MLIR] Move `ConcatOp` to its lexicographic position
Frederik Gossen
llvmlistbot at llvm.org
Thu May 28 06:37:57 PDT 2020
Author: Frederik Gossen
Date: 2020-05-28T13:37:22Z
New Revision: e73bb4fba7092f7e1ef807812063a0f655a185af
URL: https://github.com/llvm/llvm-project/commit/e73bb4fba7092f7e1ef807812063a0f655a185af
DIFF: https://github.com/llvm/llvm-project/commit/e73bb4fba7092f7e1ef807812063a0f655a185af.diff
LOG: [MLIR] Move `ConcatOp` to its lexicographic position
Purely cosmetic change.
The operation implementations in `Shape.cpp` are now lexicographic order.
Differential Revision: https://reviews.llvm.org/D80277
Added:
Modified:
mlir/lib/Dialect/Shape/IR/Shape.cpp
Removed:
################################################################################
diff --git a/mlir/lib/Dialect/Shape/IR/Shape.cpp b/mlir/lib/Dialect/Shape/IR/Shape.cpp
index c4a8b1529817..fc8f9b23e1e4 100644
--- a/mlir/lib/Dialect/Shape/IR/Shape.cpp
+++ b/mlir/lib/Dialect/Shape/IR/Shape.cpp
@@ -180,6 +180,34 @@ OpFoldResult BroadcastOp::fold(ArrayRef<Attribute> operands) {
return builder.getIndexTensorAttr(resultShape);
}
+//===----------------------------------------------------------------------===//
+// ConcatOp
+//===----------------------------------------------------------------------===//
+
+LogicalResult
+ConcatOp::inferReturnTypes(MLIRContext *context, Optional<Location> location,
+ ValueRange operands, DictionaryAttr attributes,
+ RegionRange regions,
+ SmallVectorImpl<Type> &inferredReturnTypes) {
+ auto shapeType = ShapeType::get(context);
+ inferredReturnTypes.push_back(shapeType);
+ return success();
+}
+
+OpFoldResult ConcatOp::fold(ArrayRef<Attribute> operands) {
+ if (!operands[0] || !operands[1])
+ return nullptr;
+ auto lhsShape = llvm::to_vector<6>(
+ operands[0].cast<DenseIntElementsAttr>().getValues<int64_t>());
+ auto rhsShape = llvm::to_vector<6>(
+ operands[1].cast<DenseIntElementsAttr>().getValues<int64_t>());
+ SmallVector<int64_t, 6> resultShape;
+ resultShape.append(lhsShape.begin(), lhsShape.end());
+ resultShape.append(rhsShape.begin(), rhsShape.end());
+ Builder builder(getContext());
+ return builder.getIndexTensorAttr(resultShape);
+}
+
//===----------------------------------------------------------------------===//
// ConstShapeOp
//===----------------------------------------------------------------------===//
@@ -341,34 +369,6 @@ LogicalResult SplitAtOp::fold(ArrayRef<Attribute> operands,
return success();
}
-//===----------------------------------------------------------------------===//
-// ConcatOp
-//===----------------------------------------------------------------------===//
-
-LogicalResult
-ConcatOp::inferReturnTypes(MLIRContext *context, Optional<Location> location,
- ValueRange operands, DictionaryAttr attributes,
- RegionRange regions,
- SmallVectorImpl<Type> &inferredReturnTypes) {
- auto shapeType = ShapeType::get(context);
- inferredReturnTypes.push_back(shapeType);
- return success();
-}
-
-OpFoldResult ConcatOp::fold(ArrayRef<Attribute> operands) {
- if (!operands[0] || !operands[1])
- return nullptr;
- auto lhsShape = llvm::to_vector<6>(
- operands[0].cast<DenseIntElementsAttr>().getValues<int64_t>());
- auto rhsShape = llvm::to_vector<6>(
- operands[1].cast<DenseIntElementsAttr>().getValues<int64_t>());
- SmallVector<int64_t, 6> resultShape;
- resultShape.append(lhsShape.begin(), lhsShape.end());
- resultShape.append(rhsShape.begin(), rhsShape.end());
- Builder builder(getContext());
- return builder.getIndexTensorAttr(resultShape);
-}
-
//===----------------------------------------------------------------------===//
// ToExtentTensorOp
//===----------------------------------------------------------------------===//
More information about the Mlir-commits
mailing list