Re: [patch] [sched] bitmap cleanup, speedup, 2.5.3-pre5

H. Peter Anvin (hpa@zytor.com)
28 Jan 2002 07:46:19 -0800


Followup to: <Pine.LNX.4.33.0201281744070.9796-100000@localhost.localdomain>
By author: Ingo Molnar <mingo@elte.hu>
In newsgroup: linux.dev.kernel
>
> +static __inline__ unsigned long __ffs(unsigned long word)
> +{
> + __asm__("bsfl %1,%0"
> + :"=r" (word)
> + :"r" (word));
> return word;
> }
>

Should typically be:

static __inline__ unsigned long __ffs(unsigned long word)
{
__asm__("bsfl %1,%0"
:"=r" (word)
:"rm" (word));
return word;
}

There is no reason to force the compiler to put the operand in a
register.

-hpa

-- 
<hpa@transmeta.com> at work, <hpa@zytor.com> in private!
"Unix gives you enough rope to shoot yourself in the foot."
http://www.zytor.com/~hpa/puzzle.txt	<amsp@zytor.com>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/