Add an implementation of ffs() for MSVC

This commit is contained in:
Jeff Muizelaar 2010-05-06 11:43:52 -04:00
parent a2a2bd62ff
commit f5167dc2e1

View file

@ -212,6 +212,21 @@
#ifdef _MSC_VER
#undef inline
#define inline __inline
/* Add a definition of ffs */
#include <intrin.h>
#pragma intrinsic(_BitScanForward)
static __forceinline int
ffs (int x)
{
unsigned long i;
if (_BitScanForward(&i, x) != 0)
return i + 1;
return 0;
}
#endif
#if defined(_MSC_VER) && defined(_M_IX86)