[PATCH] D80277: [MLIR] Move `ConcatOp` to its lexicographic position
Frederik Gossen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 28 07:03:28 PDT 2020
This revision was automatically updated to reflect the committed changes.
Closed by commit rGe73bb4fba709: [MLIR] Move `ConcatOp` to its lexicographic position (authored by frgossen).
Changed prior to commit:
https://reviews.llvm.org/D80277?vs=266843&id=266863#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D80277/new/
https://reviews.llvm.org/D80277
Files:
mlir/lib/Dialect/Shape/IR/Shape.cpp
Index: mlir/lib/Dialect/Shape/IR/Shape.cpp
===================================================================
--- mlir/lib/Dialect/Shape/IR/Shape.cpp
+++ mlir/lib/Dialect/Shape/IR/Shape.cpp
@@ -181,6 +181,34 @@
}
//===----------------------------------------------------------------------===//
+// 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
//===----------------------------------------------------------------------===//
@@ -342,34 +370,6 @@
}
//===----------------------------------------------------------------------===//
-// 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
//===----------------------------------------------------------------------===//
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80277.266863.patch
Type: text/x-patch
Size: 2955 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200528/9235d25c/attachment.bin>
More information about the llvm-commits
mailing list