diff options
| author | Alexander van Heukelum <heukelum@mailshack.com> | 2008-03-15 13:31:49 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-04-26 13:21:16 -0400 |
| commit | 56a6b1eb7bfb5ace0b5cb9c149f502fbd101b8ab (patch) | |
| tree | 46d3781050938b0649fc89cd8e7f612cacb66984 /include/asm-mips | |
| parent | 7d9dff22e8ad06ad330968c9e3d3a2fb55a5f9c3 (diff) | |
generic: implement __fls on all 64-bit archs
Implement __fls on all 64-bit archs:
alpha has an implementation of fls64.
Added __fls(x) = fls64(x) - 1.
ia64 has fls, but not __fls.
Added __fls based on code of fls.
mips and powerpc have __ilog2, which is the same as __fls.
Added __fls = __ilog2.
parisc, s390, sh and sparc64:
Include generic __fls.
x86_64 already has __fls.
Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/asm-mips')
| -rw-r--r-- | include/asm-mips/bitops.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/asm-mips/bitops.h b/include/asm-mips/bitops.h index ec75ce4cdb8c..c2bd126c3b4e 100644 --- a/include/asm-mips/bitops.h +++ b/include/asm-mips/bitops.h | |||
| @@ -591,6 +591,11 @@ static inline int __ilog2(unsigned long x) | |||
| 591 | return 63 - lz; | 591 | return 63 - lz; |
| 592 | } | 592 | } |
| 593 | 593 | ||
| 594 | static inline unsigned long __fls(unsigned long x) | ||
| 595 | { | ||
| 596 | return __ilog2(x); | ||
| 597 | } | ||
| 598 | |||
| 594 | #if defined(CONFIG_CPU_MIPS32) || defined(CONFIG_CPU_MIPS64) | 599 | #if defined(CONFIG_CPU_MIPS32) || defined(CONFIG_CPU_MIPS64) |
| 595 | 600 | ||
| 596 | /* | 601 | /* |
