[all-commits] [llvm/llvm-project] 42fd68: [mlir][linalg][bufferize] LinalgOp: Move existing ...

Matthias Springer via All-commits all-commits at lists.llvm.org
Thu Jan 6 14:07:09 PST 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 42fd68b34457f4d07c052cca6f490054ec2e215c
  Author: Matthias Springer <springerm at google.com>
  Date:   2022-01-07 (Fri, 07 Jan 2022)

  Changed paths:
    M mlir/lib/Dialect/Linalg/ComprehensiveBufferize/LinalgInterfaceImpl.cpp

  Log Message:
  [mlir][linalg][bufferize] LinalgOp: Move existing region to new op

This has two advantages.

1. It is more efficient. No need to clone the entire region.
2. Recreating ops (via cloning) invalidates analysis results. Previously, an OpResult could have bufferized out-of-place, even though the analysis requested an in-place bufferization. That is because BufferizationState keeps track of OpResults for storing bufferization analysis results (and cloned ops have new OpResults).

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

More information about the All-commits mailing list