[PATCH 0/4] powerpc: Replace some bitops functions by builtin/generic ones

Christophe Leroy christophe.leroy at c-s.fr
Fri Apr 21 21:18:44 AEST 2017


This patchset replaces the following bitops by builtin/generic ones:
- ffs() / __ffs()
- fls() / __fls() / fls64()
- ffz()
- __ilog2() / __ilog2_u32() / __ilog2_u64()

The current functions are written as inline assembly which prevents
GCC to optimise them in case of constant parameters and obliges GCC
to group the related instructions all together.

With the builtin alternatives, GCC optimises better

Christophe Leroy (4):
  powerpc: Discard ffs()/__ffs() function and use builtin functions
    instead
  powerpc: Use builtin functions for fls()/__fls()/fls64()
  powerpc: Replace ffz() by equivalent generic function
  powerpc: remove __ilog2()s and use generic ones

 arch/powerpc/Kconfig              |  8 ----
 arch/powerpc/include/asm/bitops.h | 87 ++++-----------------------------------
 2 files changed, 7 insertions(+), 88 deletions(-)

-- 
2.12.0



More information about the Linuxppc-dev mailing list