[all-commits] [llvm/llvm-project] 0422a4: [mlir][scf][Transform] Refactor transform.fuse_int...

Nicolas Vasilache via All-commits all-commits at lists.llvm.org
Fri Sep 16 09:22:02 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0422a4407f6b1dcb12d37c8b59841e3ccf0c9861
      https://github.com/llvm/llvm-project/commit/0422a4407f6b1dcb12d37c8b59841e3ccf0c9861
  Author: Nicolas Vasilache <nicolas.vasilache at gmail.com>
  Date:   2022-09-16 (Fri, 16 Sep 2022)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Dialect/Linalg/transform-op-fuse-into-containing.mlir

  Log Message:
  -----------
  [mlir][scf][Transform] Refactor transform.fuse_into_containing_op so it is iterative and supports output fusion.

This revision revisits the implementation of `transform.fuse_into_containing_op` so that it iterates on
producers one use at a time.

Support is added to fuse a producer through a foreach_thread shared tensor argument, in which case we
tile and fuse the op inside the containing op and update the shared tensor argument to the unique destination operand.
If one cannot find such a unique destination operand the transform fails.

Differential Revision: https://reviews.llvm.org/D134051




More information about the All-commits mailing list