[Mlir-commits] [mlir] 234c4d2 - [mlir][linalg] Set result types in all builders.
Tobias Gysi
llvmlistbot at llvm.org
Wed Aug 18 23:47:24 PDT 2021
Author: Tobias Gysi
Date: 2021-08-19T06:19:12Z
New Revision: 234c4d2362c9015770132ae4e35d5973bc03ef6c
URL: https://github.com/llvm/llvm-project/commit/234c4d2362c9015770132ae4e35d5973bc03ef6c
DIFF: https://github.com/llvm/llvm-project/commit/234c4d2362c9015770132ae4e35d5973bc03ef6c.diff
LOG: [mlir][linalg] Set result types in all builders.
Add code to set the result types in all yaml op builders.
Reviewed By: nicolasvasilache
Differential Revision: https://reviews.llvm.org/D108273
Added:
Modified:
mlir/test/mlir-linalg-ods-gen/test-linalg-ods-yaml-gen.yaml
mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
Removed:
################################################################################
diff --git a/mlir/test/mlir-linalg-ods-gen/test-linalg-ods-yaml-gen.yaml b/mlir/test/mlir-linalg-ods-gen/test-linalg-ods-yaml-gen.yaml
index 3c8b5271cf5c3..6613ab2a006f1 100644
--- a/mlir/test/mlir-linalg-ods-gen/test-linalg-ods-yaml-gen.yaml
+++ b/mlir/test/mlir-linalg-ods-gen/test-linalg-ods-yaml-gen.yaml
@@ -62,8 +62,14 @@ structured_op: !LinalgStructuredOpConfig
# ODS-NEXT: Variadic<AnyShaped>:$outputs
# ODS: let builders =
+# ODS: (ins "TypeRange":$resultTensorTypes, "ValueRange":$inputs,
+# ODS-NEXT: "ValueRange":$outputs,
+# ODS-NEXT: CArg<"ArrayRef<NamedAttribute>", "{}">:$attributes),
+
# ODS: $_state.addOperands(inputs);
# ODS-NEXT: $_state.addOperands(outputs);
+# ODS-NEXT: $_state.addTypes(resultTensorTypes);
+# ODS-NEXT: $_state.addAttributes(attributes);
# ODS-NEXT: $_state.addAttribute(
# ODS-NEXT: "operand_segment_sizes",
# ODS-NEXT: $_builder.getI32VectorAttr({
diff --git a/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp b/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
index b95603056da3f..a0eb1dea88603 100644
--- a/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
+++ b/mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
@@ -461,6 +461,11 @@ def {0} : LinalgStructuredBase_Op<"{1}", !listconcat([
[{{
$_state.addOperands(inputs);
$_state.addOperands(outputs);
+ SmallVector<Type> resultTensorTypes;
+ copy_if(outputs.getTypes(),
+ std::back_inserter(resultTensorTypes),
+ [](Type type) {{ return type.isa<RankedTensorType>(); });
+ $_state.addTypes(resultTensorTypes);
$_state.addAttribute(
"operand_segment_sizes",
$_builder.getI32VectorAttr({{
More information about the Mlir-commits
mailing list