Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: [PATCH] MPILIB: Provide count_leading/trailing_zeros() based on arch functions | Date | Fri, 20 Jul 2012 22:02:28 +0000 |
| |
On Friday 20 July 2012, David Howells wrote: > > Arnd Bergmann <arnd@arndb.de> wrote: > > > I don't generally like to put stuff into asm-generic when it's unlikely > > to be overridden by architectures. It would really belong into > > include/linux, but then again we have all the other bitops in asm-generic > > as well, so whatever... > > Some arches (such as Sparc, I think) have count-leading-zero instructions.
But I guess they would still use the same definition of
+static inline int count_leading_zeros(unsigned long x) +{ + if (sizeof(x) == 4) + return BITS_PER_LONG - fls(x); + else + return BITS_PER_LONG - fls64(x); +}
and just provide their own fls().
Arnd
| |