[all-commits] [llvm/llvm-project] 814330: [mlir][bufferization] Generalize tensor slice rule...

Matthias Springer via All-commits all-commits at lists.llvm.org
Wed Sep 13 03:27:33 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8143307b336db18f5db4e19a202194ee6cb614de
      https://github.com/llvm/llvm-project/commit/8143307b336db18f5db4e19a202194ee6cb614de
  Author: Matthias Springer <me at m-sp.org>
  Date:   2023-09-13 (Wed, 13 Sep 2023)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/CMakeLists.txt
    A mlir/include/mlir/Dialect/Bufferization/IR/SubsetInsertionOpInterface.h
    A mlir/include/mlir/Dialect/Bufferization/IR/SubsetInsertionOpInterface.td
    A mlir/include/mlir/Dialect/Tensor/Transforms/SubsetInsertionOpInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/Bufferization/IR/CMakeLists.txt
    A mlir/lib/Dialect/Bufferization/IR/SubsetInsertionOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Transforms/SubsetInsertionOpInterfaceImpl.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][bufferization] Generalize tensor slice rules to subset ops (#65619)

This commit generalizes the special
tensor.extract_slice/tensor.insert_slice bufferization rules to tensor
subset ops.

Ops that insert a tensor into a tensor at a specified subset (e.g.,
tensor.insert_slice, tensor.scatter) can implement the
`SubsetInsertionOpInterface`.

Apart from adding a new op interface (extending the API), this change is
NFC. The only ops that currently implement the new interface are
tensor.insert_slice and tensor.parallel_insert_slice, and those ops were
are supported by One-Shot Bufferize.




More information about the All-commits mailing list