[all-commits] [llvm/llvm-project] fdf73e: [mlir][memref] Remove incorrect `memref.transpose`...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Tue Jan 30 07:58:34 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: fdf73e949565686804fbd2ab1b3a3bf440a250ca
      https://github.com/llvm/llvm-project/commit/fdf73e949565686804fbd2ab1b3a3bf440a250ca
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-01-30 (Tue, 30 Jan 2024)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/canonicalize.mlir

  Log Message:
  -----------
  [mlir][memref] Remove incorrect `memref.transpose` fold (#79809)

This folded casts into `memref.transpose` without updating the result
type of the transpose op, which resulted in IR that failed to verify for
statically sized memrefs.

i.e.

```mlir
%cast = memref.cast %0 : memref<?x4xf32> to memref<?x?xf32>
%transpose = memref.transpose %cast : memref<?x?xf32> to memref<?x?xf32>
```

would fold to:

```mlir
// Fails verification:
%transpose = memref.transpose %cast : memref<?x4xf32> to memref<?x?xf32>
```




More information about the All-commits mailing list