[all-commits] [llvm/llvm-project] f24c44: [mlir][SVE] Add an e2e test for vector.contract (#...

Andrzej Warzyński via All-commits all-commits at lists.llvm.org
Thu Oct 26 12:58:03 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f24c443e8241df7df1d5152c45636c76b682a043
      https://github.com/llvm/llvm-project/commit/f24c443e8241df7df1d5152c45636c76b682a043
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2023-10-26 (Thu, 26 Oct 2023)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/vector-contract-to-outerproduct-transforms.mlir
    M mlir/test/Dialect/Vector/vector-scalable-outerproduct.mlir
    A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/test-contraction.mlir

  Log Message:
  -----------
  [mlir][SVE] Add an e2e test for vector.contract (#69845)

Adds an end-to-end test for `vector.contract` that targets SVE (i.e.
scalable vectors). Note that this requires lifting the restriction on
`vector.outerproduct` (to which `vector.contract` is lowered to) that
would deem the following as invalid by the Op verifier (*):

```
vector.outerproduct %27, %28, %26 {kind = #vector.kind<add>} : vector<3xf32>, vector<[2]xf32>
```

This is indeed valid as the end-to-end test demonstrates (at least when
compiling for SVE).




More information about the All-commits mailing list