[all-commits] [llvm/llvm-project] 35c1e6: [MLIR] [docs] Fix misguided examples in memref.sub...

seongwon bang via All-commits all-commits at lists.llvm.org
Thu Nov 25 04:24:46 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 35c1e6ac1af0f3c61c756cb30a2c99d8775da4c6
      https://github.com/llvm/llvm-project/commit/35c1e6ac1af0f3c61c756cb30a2c99d8775da4c6
  Author: seongwon bang <makesource at gmail.com>
  Date:   2021-11-25 (Thu, 25 Nov 2021)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td

  Log Message:
  -----------
  [MLIR] [docs] Fix misguided examples in memref.subview operation.

The examples in `memref.subview` operation are misguided in that subview's strides operands mean "memref-rank number of strides that compose multiplicatively with the base memref strides in each dimension.".
So the below examples should be changed from `Strides: [64, 4, 1]` to `Strides: [1, 1, 1]`

Before changes
```
// Subview with constant offsets, sizes and strides.
%1 = memref.subview %0[0, 2, 0][4, 4, 4][64, 4, 1]
  : memref<8x16x4xf32, (d0, d1, d2) -> (d0 * 64 + d1 * 4 + d2)> to
    memref<4x4x4xf32, (d0, d1, d2) -> (d0 * 64 + d1 * 4 + d2 + 8)>
```

After changes
```
// Subview with constant offsets, sizes and strides.
%1 = memref.subview %0[0, 2, 0][4, 4, 4][1, 1, 1]
  : memref<8x16x4xf32, (d0, d1, d2) -> (d0 * 64 + d1 * 4 + d2)> to
    memref<4x4x4xf32, (d0, d1, d2) -> (d0 * 64 + d1 * 4 + d2 + 8)>
```

Also I fixed some syntax issues in docs related with memref layout map and added detailed explanation in subview rank reducing case.

Reviewed By: herhut

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




More information about the All-commits mailing list