pathc from w3seek : bug 1702 : Fix BitScanReverse()

svn path=/trunk/; revision=23156
This commit is contained in:
Magnus Olsen 2006-07-18 16:36:54 +00:00
parent 55b8810a2b
commit 97f449127c

View file

@ -3818,13 +3818,13 @@ static __inline__ BOOLEAN
BitScanReverse(OUT ULONG *Index,
IN ULONG Mask)
{
LONG OldBit;
__asm__ __volatile__("bsrl %1,%2\n\t"
"sbbl %0,%0\n\t"
:"=r" (OldBit),"=m" (*Index)
:"Ir" (Mask)
: "memory");
return OldBit;
BOOLEAN BitPosition = 0;
__asm__ __volatile__("bsrl %2,%0\n\t"
"setnz %1\n\t"
:"=&r" (*Index), "=r" (BitPosition)
:"rm" (Mask)
:"memory");
return BitPosition;
}
#endif