aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAndrzej WarzyƄski <andrzej.warzynski@arm.com>2023-10-27 09:38:36 +0100
committerGitHub <noreply@github.com>2023-10-27 09:38:36 +0100
commit5270df3d177ae8849e5f1a2cec28b193ab209ef2 (patch)
tree15b1004d758eaa8c6cea3598900e67bbaed64518 /clang/lib/Frontend/CompilerInvocation.cpp
parent0a10e88915167c88443dd58883e01d543963e40e (diff)
downloadllvm-5270df3d177ae8849e5f1a2cec28b193ab209ef2.zip
llvm-5270df3d177ae8849e5f1a2cec28b193ab209ef2.tar.gz
llvm-5270df3d177ae8849e5f1a2cec28b193ab209ef2.tar.bz2
[mlir][vector] Add scalable vectors to tests for vector.contract (#70039)
Update the remaining tests for matrix multiplication (_matmul_) in: * vector-contract-to-outerproduct-transforms.mlir with cases for scalable vectors. Note that in order for the "vector.contract -> vector.outerproduct" patterns to work, only the non-reduction dimension can be scalable (*). For Matmul operations that is set to be the N dimension (i.e. rows of the output matrix), which matches how matrix multiplication are normally implemented for e.g. Arm's SVE. However, making the M dimension scalable (i.e. columns of the output matrix) should work as well. Making both parellel dimensions scalable is left as a TODO for when support for 2-D scalable vectors is more established (this is work-in-progress as part of the effort to support Arm's SME in MLIR). The change in: * `UnrolledOuterProductGenerator` is a "bug fix" to make sure that the conversion pattern correctly propagates scalability when creating `arith.extf` operations. (*) The conversion tested in this file unrolls along the reduction dimension, which is not supported for scalable vectors.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions