Re: [patch 14/44] generic hweight{64,32,16,8}()
Andi Kleen <[email protected]>
| Newsgroups | gmane.linux.ports.ultrapenguin,gmane.linux.kernel,gmane.linux.ports.ia64,gmane.linux.ports.hppa,gmane.linux.ports.ppc.devel,gmane.linux.ports.sh.devel,gmane.linux.ports.sparc |
|---|---|
| Message-ID | <[email protected]> |
On Wednesday 01 February 2006 10:02, Akinobu Mita wrote:
> +static inline unsigned int hweight32(unsigned int w)
> +{
> + unsigned int res = (w & 0x55555555) + ((w >> 1) & 0x55555555);
> + res = (res & 0x33333333) + ((res >> 2) & 0x33333333);
> + res = (res & 0x0F0F0F0F) + ((res >> 4) & 0x0F0F0F0F);
> + res = (res & 0x00FF00FF) + ((res >> 8) & 0x00FF00FF);
> + return (res & 0x0000FFFF) + ((res >> 16) & 0x0000FFFF);
> +}
How large are these functions on x86? Maybe it would be better to not inline them,
but put it into some C file out of line.
-Andi
-
To unsubscribe from this list: send the line "unsubscribe ultralinux" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html