diff options
author | Christophe Lyon <christophe.lyon@arm.com> | 2022-05-05 09:25:14 +0100 |
---|---|---|
committer | Christophe Lyon <christophe.lyon@arm.com> | 2022-05-20 09:36:08 +0200 |
commit | 5143faee0d0edfd5849c5f54677cb699bf84a5db (patch) | |
tree | 0e7320dd418f7453706f304bc137eff57ff7eb50 /gcc/combine-stack-adj.cc | |
parent | 308a0af4f913243023ee52332f7cc513745c9203 (diff) | |
download | gcc-5143faee0d0edfd5849c5f54677cb699bf84a5db.tar.gz |
libgcc: use __builtin_clz and __builtin_ctz in libbid
This patch replaces libbid's implementations of clz and ctz for 32 and
64 bits inputs which used several masks, and switches to the
corresponding builtins. This will provide a better implementation,
especially on targets with clz/ctz instructions.
2022-05-06 Christophe Lyon <christophe.lyon@arm.com>
libgcc/config/libbid/ChangeLog:
* bid_binarydecimal.c (CLZ32_MASK16): Delete.
(CLZ32_MASK8): Delete.
(CLZ32_MASK4): Delete.
(CLZ32_MASK2): Delete.
(CLZ32_MASK1): Delete.
(clz32_nz): Use __builtin_clz.
(ctz32_1bit): Delete.
(ctz32): Use __builtin_ctz.
(CLZ64_MASK32): Delete.
(CLZ64_MASK16): Delete.
(CLZ64_MASK8): Delete.
(CLZ64_MASK4): Delete.
(CLZ64_MASK2): Delete.
(CLZ64_MASK1): Delete.
(clz64_nz): Use __builtin_clzl.
(ctz64_1bit): Delete.
(ctz64): Use __builtin_ctzl.
Diffstat (limited to 'gcc/combine-stack-adj.cc')
0 files changed, 0 insertions, 0 deletions