ARM: 8785/1: use compiler built-ins for ffs and fls
authorNicolas Pitre <nicolas.pitre@linaro.org>
Wed, 25 Jul 2018 03:38:54 +0000 (04:38 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Mon, 30 Jul 2018 10:45:53 +0000 (11:45 +0100)
commit001a30c4d0e871b21d296e1bcafc6756a1b10607
tree513df3ef85de8da961ce9416a8714cbce91c30ce
parentcbfc5619e0cc8dcdf3020e27426eec362307cc14
ARM: 8785/1: use compiler built-ins for ffs and fls

On ARMv5 and above, it is beneficial to use compiler built-ins such as
__builtin_ffs() and __builtin_ctzl() to implement ffs(), __ffs(), fls()
and __fls(). The compiler does inline the clz instruction and even the
rbit instruction when available, or provide a constant value when
possible. On ARMv4 the compiler calls out to helper functions for those
built-ins so it is best to keep the open coded versions in that case.

Signed-off-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/include/asm/bitops.h