Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
SMPI's network model calibration script: you give it information about your platform...
[simgrid.git] / src / xbt / setset.c
index d5c33e9..1e0dd05 100644 (file)
@@ -3,21 +3,20 @@
 #include <string.h>
 #include "setset_private.h"
 #include "xbt/sysdep.h"
+#include "simgrid_config.h" /*_XBT_WIN32*/
 
 /*The function ffs doesn't exist for windows*/
-#ifdef WIN32
-       int XBT_INLINE ffs(int x)
-       {
-               int r;
-               __asm{
-                       mov ecx, [x]
-                       bsf eax, ecx
-                       jnz ffs1
-                       mov eax, -1
-                       ffs1:
-                       mov[r],eax
+#ifdef _XBT_WIN32
+       int ffs(int bits)
+    {
+               int i;
+               if (bits == 0)
+                       return (0);
+               for (i = 1; ; i++, bits >>= 1)
+               {
+                       if (bits & 1) break;
                }
-               return(r);
+               return (i);
        }
 #endif