]> Gentwo Git Trees - linux/.git/commit
s390/bitops: Switch to generic ffs() if supported by compiler
authorHeiko Carstens <hca@linux.ibm.com>
Mon, 22 Sep 2025 11:40:20 +0000 (13:40 +0200)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Wed, 24 Sep 2025 14:24:18 +0000 (16:24 +0200)
commit6c4e0cb3d87ad63a30e05e7624a45a6f01240e70
treeed7c8c1268499a0568fe9f2a52e36d7ba60bfa14
parent7b80a23c0e33ae5a3ae68e0cf5b5a59e8a368c37
s390/bitops: Switch to generic ffs() if supported by compiler

Use generic ffs() / __builtin_ffs() if supported by the compiler. GCC 16
will have support for __builtin_ffs().
See gcc commit f50cff9766c5 ("s390: Implement clz and ctz for SI mode").

In the distant future when GCC 16 becomes the minimum supported version,
this allows to get rid of the flogr inline assembly.

Kernel image size is reduced by ~500 bytes (gcc 16 beta + defconfig).

Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
arch/s390/Kconfig
arch/s390/include/asm/bitops.h