aboutsummaryrefslogtreecommitdiff
path: root/libcpp/include/cpplib.h
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2025-08-04 11:45:35 +0100
committerRichard Sandiford <richard.sandiford@arm.com>2025-08-04 11:45:35 +0100
commitb768e2786f8c85097442bd52010fee1b7ed12ed2 (patch)
tree22f03f33d222f814a54325bc61d6fb11ba4b2c9d /libcpp/include/cpplib.h
parent4ff15c5a998354c58dca19fc825c44dcb6d57bb6 (diff)
downloadgcc-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