[all-commits] [llvm/llvm-project] 00d1a1: [mlir] Add ReplicateOp to the Transform dialect

ftynse via All-commits all-commits at lists.llvm.org
Tue Jul 12 02:08:27 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 00d1a1a25fbbfd1fdc43f31194378423a707c738
      https://github.com/llvm/llvm-project/commit/00d1a1a25fbbfd1fdc43f31194378423a707c738
  Author: Alex Zinenko <zinenko at google.com>
  Date:   2022-07-12 (Tue, 12 Jul 2022)

  Changed paths:
    M mlir/include/mlir/Dialect/Transform/IR/TransformInterfaces.h
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    M mlir/lib/Dialect/Transform/IR/TransformInterfaces.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/python/mlir/dialects/_transform_ops_ext.py
    M mlir/test/Dialect/Transform/expensive-checks.mlir
    M mlir/test/Dialect/Transform/test-interpreter.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.td
    M mlir/test/python/dialects/transform.py

  Log Message:
  -----------
  [mlir] Add ReplicateOp to the Transform dialect

This handle manipulation operation allows one to define a new handle that is
associated with a the same payload IR operations N times, where N can be driven
by the size of payload IR operation list associated with another handle. This
can be seen as a sort of broadcast that can be used to ensure the lists
associated with two handles have equal numbers of payload IR ops as expected by
many pairwise transform operations.

Introduce an additional "expensive" check that guards against consuming a
handle that is assocaited with the same payload IR operation more than once as
this is likely to lead to double-free or other undesired effects.

Depends On D129110

Reviewed By: nicolasvasilache

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




More information about the All-commits mailing list