Welcome to the CHICKEN Scheme pasting service
foreign-lambda* code added by mario-goulart on Fri Oct 17 22:57:10 2014
(define ilen
(foreign-lambda* long ((unsigned-long x))
"unsigned long y;
long n = 0;
#ifdef C_SIXTY_FOUR
y = x >> 32; if (y != 0) { n += 32; x = y; }
#endif
y = x >> 16; if (y != 0) { n += 16; x = y; }
y = x >> 8; if (y != 0) { n += 8; x = y; }
y = x >> 4; if (y != 0) { n += 4; x = y; }
y = x >> 2; if (y != 0) { n += 2; x = y; }
y = x >> 1; if (y != 0) C_return(n + 2);
C_return(n + x);
"))