diff options
author | Benjamin Maxwell <benjamin.maxwell@arm.com> | 2024-06-20 10:27:07 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-20 10:27:07 +0100 |
commit | e2296d8295516e9991cd6ca99ba193fbd232b6da (patch) | |
tree | d7eb98ffcf897ff3d0ddd1f4adeadd05c0183bec /mlir/test/Conversion/GPUCommon | |
parent | 94fdfc1ca859d5802bee70853913e8d0400ad9d1 (diff) | |
download | llvm-e2296d8295516e9991cd6ca99ba193fbd232b6da.zip llvm-e2296d8295516e9991cd6ca99ba193fbd232b6da.tar.gz llvm-e2296d8295516e9991cd6ca99ba193fbd232b6da.tar.bz2 |
[mlir][ArmSME] Lower extract from 2D scalable create_mask to psel (#96066)
Example:
```mlir
%mask = vector.create_mask %a, %b : vector<[4]x[8]xi1>
%slice = vector.extract %mask[%index]
: vector<[8]xi1> from vector<[4]x[8]xi1>
```
Becomes:
```mlir
%mask_rows = vector.create_mask %a : vector<[4]xi1>
%mask_cols = vector.create_mask %b : vector<[8]xi1>
%slice = arm_sve.psel %mask_cols, %mask_rows[%index]
: vector<[8]xi1>, vector<[4]xi1>
```
Note: While psel is under ArmSVE it requires SME (or SVE 2.1), so this
is currently the most logical place for this lowering.
Diffstat (limited to 'mlir/test/Conversion/GPUCommon')
0 files changed, 0 insertions, 0 deletions