From 26fee2b3cb71bfa2ff5a9decb9caa3d238df5b27 Mon Sep 17 00:00:00 2001 From: Harsh Menon Date: Fri, 2 Jun 2023 16:18:00 -0700 Subject: [PATCH] [mlir] [linalg] Update documentation for fuse_into_containing_op This patch updates the docs for fuse_into_containing_op. It updates the returned values to include the new_containing_op and adds a brief description of the new_containing_op. updates the docs with new changes in the op regarding the return of the new_containing_op as well as a brief description o Differential Revision: https://reviews.llvm.org/D152044 --- .../mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td b/mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td index 856eac88b36e..65a2510a11bc 100644 --- a/mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td +++ b/mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td @@ -150,11 +150,12 @@ def FuseIntoContainingOp : let description = [{ Fuses the `producer_op` into the `containing_op`. - Returns a handle to the fused ops. + Returns a handle to the fused ops and the `new_containing_op`. The producer is typically a slice of a tileable op (i.e., implements TilingInterface). In that case, this transform computes the accessed - producer slice inside of the containing op ("tile and fuse"). Otherwise, + producer slice inside of the containing op ("tile and fuse") and if required, + creates a new containing op with outputs from the fused producer. Otherwise, the entire producer is cloned inside the containing op ("clone and fuse"). The containing op handle must be associated with exactly one payload op. The