[Mlir-commits] [mlir] [mlir][vector] Update tests for xfer permutation lowering (2/N) (PR #123237)

Andrzej WarzyƄski llvmlistbot at llvm.org
Fri Feb 14 09:25:25 PST 2025


================
@@ -1,24 +1,22 @@
 // RUN: mlir-opt %s --transform-interpreter --split-input-file | FileCheck %s
----------------
banach-space wrote:

That's actually a very good and a very deep question, thanks!

Spot the difference :) 
_(hint - look for _where_ `%mask` is used)_

```mlir
  // "with mask"
  vector.transfer_write %vec, %mem[%idx, %idx, %idx, %idx], %mask {
    in_bounds = [true, true],
    permutation_map = affine_map<(d0, d1, d2, d3) -> (d3, d2)>
  } : vector<4x[8]xi16>, memref<2x2x?x4xi16>
```

```mlir
  // "masked"
  vector.mask %mask {
    vector.transfer_write %vec, %mem[%idx, %idx, %idx, %idx] {
      in_bounds = [true, true],
      permutation_map = affine_map<(d0, d1, d2, d3) -> (d3, d2)>
    } : vector<4x8xi16>, memref<2x2x8x4xi16>
  } : vector<8x4xi1>
```

I am trying to understand whether we need both, but that will take a while. 

As for the naming, I was trying to clearly distinguish between the two cases. It's not ideal, but it's also not something that's easy to document through function names :(

https://github.com/llvm/llvm-project/pull/123237


More information about the Mlir-commits mailing list