LoongArch: Use builtins for ffs and ffsll

On LoongArch GCC compiles __builtin_ffs{,ll} to basically
`(x ? __builtin_ctz (x) : -1) + 1`.  Since a hardware ctz instruction is
available, this is much better than the table-driven generic
implementation.

Tested on loongarch64.

Signed-off-by: Xi Ruoyao <xry111@xry111.site>
Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
This commit is contained in:
Xi Ruoyao 2024-02-04 08:27:50 +08:00 committed by Adhemerval Zanella
parent 814ed22eab
commit 2e80f13937

View File

@ -0,0 +1,2 @@
#define USE_FFS_BUILTIN 1
#define USE_FFSLL_BUILTIN 1