[all-commits] [llvm/llvm-project] 9ddbce: [mlir][vector] Extend vector.{insert|extract}_stri...

Andrzej Warzyński via All-commits all-commits at lists.llvm.org
Thu Jan 25 11:01:41 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9ddbcee25ea4b436ab478874221553f4a7bc2289
      https://github.com/llvm/llvm-project/commit/9ddbcee25ea4b436ab478874221553f4a7bc2289
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-01-25 (Thu, 25 Jan 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/Vector/ops.mlir

  Log Message:
  -----------
  [mlir][vector] Extend vector.{insert|extract}_strided_slice (#79052)

Extends `vector.insert_strided_slice` and `vector.insert_strided_slice`
to allow scalable input and output vectors. For scalable sizes, the
corresponding slice size has to match the corresponding dimension in the
output/input vector (insert/extract, respectively).

This is supported:
```mlir
vector.extract_strided_slice %1 {
  offsets = [0, 3, 0],
  sizes = [1, 1, 4],
  strides = [1, 1, 1] } : vector<1x4x[4]xi32> to vector<1x1x[4]xi32>
```

This is not supported:
```mlir
vector.extract_strided_slice %1 {
  offsets = [0, 3, 0],
  sizes = [1, 1, 2],
  strides = [1, 1, 1] } : vector<1x4x[4]xi32> to vector<1x1x[2]xi32>
```




More information about the All-commits mailing list