diff options
author | Lawrence Benson <github@lawben.com> | 2024-04-29 16:45:33 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-29 16:45:33 +0200 |
commit | bd07c22e5372789c3eb47b9009029d5e99e0ef9f (patch) | |
tree | 6dce32fb32cc0bd7ceaffb71a89524e238044c3d /lldb/packages/Python/lldbsuite/test/gdbclientutils.py | |
parent | 5e3032638e2df5f301dee21f072acc4d6cc806c8 (diff) | |
download | llvm-bd07c22e5372789c3eb47b9009029d5e99e0ef9f.zip llvm-bd07c22e5372789c3eb47b9009029d5e99e0ef9f.tar.gz llvm-bd07c22e5372789c3eb47b9009029d5e99e0ef9f.tar.bz2 |
[Clang] Add support for scalable vectors in __builtin_reduce_* functions (#87750)
Currently, a lot of `__builtin_reduce_*` function do not support
scalable vectors, i.e., ARM SVE and RISCV V. This PR adds support for
them. The main code change is to use a different path to extract the
type from the vectors, the rest is the same and LLVM supports the reduce
functions for `vscale` vectors.
This PR adds scalable vector support for:
- `__builtin_reduce_add`
- `__builtin_reduce_mul`
- `__builtin_reduce_xor`
- `__builtin_reduce_or`
- `__builtin_reduce_and`
- `__builtin_reduce_min`
- `__builtin_reduce_max`
Note: For all except `min/max`, the element type must still be an
integer value. Adding floating point support for `add` and `mul` is
still an open TODO.
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/gdbclientutils.py')
0 files changed, 0 insertions, 0 deletions