[mlir] make memref.subview produce strided layout
authorAlex Zinenko <zinenko@google.com>
Thu, 15 Sep 2022 16:29:14 +0000 (18:29 +0200)
committerAlex Zinenko <zinenko@google.com>
Fri, 16 Sep 2022 08:56:46 +0000 (10:56 +0200)
commit2791162b01e3199b24f2d18f7b370157e2c57daf
tree225af8c894af07237fe3e72a3b0c73ba24a836e8
parent57c7bb3ec89565c68f858d316504668f9d214d59
[mlir] make memref.subview produce strided layout

Memref subview operation has been initially designed to work on memrefs with
strided layouts only and has never supported anything else. Port it to use the
recently added StridedLayoutAttr instead of extracting the strided from
implicitly from affine maps.

Reviewed By: nicolasvasilache

Differential Revision: https://reviews.llvm.org/D133938
19 files changed:
mlir/include/mlir/IR/BuiltinTypes.h
mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
mlir/lib/IR/BuiltinTypes.cpp
mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-out-params.mlir
mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
mlir/test/Dialect/Linalg/promote.mlir
mlir/test/Dialect/Linalg/tile.mlir
mlir/test/Dialect/Linalg/transform-patterns.mlir
mlir/test/Dialect/Linalg/transform-promotion.mlir
mlir/test/Dialect/MemRef/canonicalize.mlir
mlir/test/Dialect/MemRef/invalid.mlir
mlir/test/Dialect/MemRef/multibuffer.mlir
mlir/test/Dialect/SCF/one-shot-bufferize.mlir
mlir/test/Dialect/Tensor/bufferize.mlir
mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
mlir/test/Dialect/Vector/vector-transfer-full-partial-split.mlir
mlir/test/Transforms/canonicalize.mlir
mlir/test/Transforms/compose-subview.mlir
mlir/unittests/Dialect/MemRef/InferShapeTest.cpp