diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2025-08-04 11:45:35 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2025-08-04 11:45:35 +0100 |
commit | b768e2786f8c85097442bd52010fee1b7ed12ed2 (patch) | |
tree | 22f03f33d222f814a54325bc61d6fb11ba4b2c9d /libcpp/include/cpplib.h | |
parent | 4ff15c5a998354c58dca19fc825c44dcb6d57bb6 (diff) | |
download | gcc-b768e2786f8c85097442bd52010fee1b7ed12ed2.zip gcc-b768e2786f8c85097442bd52010fee1b7ed12ed2.tar.gz gcc-b768e2786f8c85097442bd52010fee1b7ed12ed2.tar.bz2 |
aarch64: Use VNx16BI for svdup_b*
This patch continues the work of making ACLE intrinsics use VNx16BI
for svbool_t results. It deals with the predicate forms of svdup.
gcc/
* config/aarch64/aarch64-protos.h
(aarch64_emit_sve_pred_vec_duplicate): Declare.
* config/aarch64/aarch64.cc
(aarch64_emit_sve_pred_vec_duplicate): New function.
* config/aarch64/aarch64-sve.md (vec_duplicate<PRED_ALL:mode>): Use it.
* config/aarch64/aarch64-sve-builtins-base.cc
(svdup_impl::expand): Handle boolean values specially. Check for
constants and fall back on aarch64_emit_sve_pred_vec_duplicate
for the variable case, ensuring that the result has mode VNx16BI.
gcc/testsuite/
* gcc.target/aarch64/sve/acle/general/dup_1.c: New test.
Diffstat (limited to 'libcpp/include/cpplib.h')
0 files changed, 0 insertions, 0 deletions