aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.in
diff options
context:
space:
mode:
authorAndrew Pinski <quic_apinski@quicinc.com>2024-06-10 00:39:54 +0000
committerAndrew Pinski <quic_apinski@quicinc.com>2024-08-15 23:55:55 -0700
commitfcc3af9949880476c4ed01a98bd7f5d7f29b7b16 (patch)
treee7adab9130bc2f65d47994a4b379002813e405f6 /gcc/config.in
parent1b8b53ef75c143cddc114705c97c74d9c8f7a64b (diff)
downloadgcc-trunk.zip
gcc-trunk.tar.gz
gcc-trunk.tar.bz2
aarch64: Improve popcount for bytes [PR113042]HEADtrunkmaster
For popcount for bytes, we don't need the reduction addition after the vector cnt instruction as we are only counting one byte's popcount. This changes the popcount extend to cover all ALLI rather than GPI. Changes since v1: * v2 - Use ALLI iterator and combine all into one pattern. Add new testcases popcnt[6-8].c. * v3 - Simplify TARGET_CSSC path. Use convert_to_mode instead of gen_zero_extend* directly. Some other small cleanups. Bootstrapped and tested on aarch64-linux-gnu with no regressions. PR target/113042 gcc/ChangeLog: * config/aarch64/aarch64.md (popcount<mode>2): Update pattern to support ALLI modes. gcc/testsuite/ChangeLog: * gcc.target/aarch64/popcnt5.c: New test. * gcc.target/aarch64/popcnt6.c: New test. * gcc.target/aarch64/popcnt7.c: New test. * gcc.target/aarch64/popcnt8.c: New test. Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
Diffstat (limited to 'gcc/config.in')
0 files changed, 0 insertions, 0 deletions