[mlir][MemRef] Compute unused dimensions of a rank-reducing subviews using strides...
authorMaheshRavishankar <ravishankarm@google.com>
Mon, 20 Sep 2021 18:04:15 +0000 (11:04 -0700)
committerMaheshRavishankar <ravishankarm@google.com>
Mon, 20 Sep 2021 18:05:30 +0000 (11:05 -0700)
commit4cf9bf6c9f64cca1111134acc9f84efe8f27e8d1
tree74db4490e86e5366ddfaef5cd365ad9e91ffd2b9
parent1e45cd75dfb1df61892c1a26654c8997d8aeef66
[mlir][MemRef] Compute unused dimensions of a rank-reducing subviews using strides as well.

For `memref.subview` operations, when there are more than one
unit-dimensions, the strides need to be used to figure out which of
the unit-dims are actually dropped.

Differential Revision: https://reviews.llvm.org/D109418
mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
mlir/include/mlir/Interfaces/ViewLikeInterface.td
mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
mlir/lib/Dialect/MemRef/Transforms/FoldSubViewOps.cpp
mlir/test/Dialect/Linalg/loops.mlir
mlir/test/Dialect/MemRef/canonicalize.mlir
mlir/test/Dialect/MemRef/fold-subview-ops.mlir
mlir/test/Dialect/MemRef/invalid.mlir
mlir/test/IR/invalid-ops.mlir