find_first_bit(const unsigned long * addr, unsigned int size) 
find_first_bit(const unsigned long * addr, unsigned long size) 
find_first_bit(const unsigned long * addr, unsigned int size){	typedef struct { long _[__BITOPS_WORDS(size)]; } addrtype;	unsigned long cmp, count;        unsigned int res;        if (!size)                return 0;        __asm__("   slr  %1,%1\n"                "   lr   %2,%3\n"                "   slr  %0,%0\n"                "   ahi  %2,31\n"                "   srl  %2,5\n"                "0: c    %1,0(%0,%4)\n"                "   jne  1f\n"                "   ahi  %0,4\n"                "   brct %2,0b\n"                "   lr   %0,%3\n"                "   j    4f\n"                "1: l    %2,0(%0,%4)\n"                "   sll  %0,3\n"                "   lhi  %1,0xff\n"                "   tml  %2,0xffff\n"                "   jnz  2f\n"                "   ahi  %0,16\n"                "   srl  %2,16\n"                "2: tml  %2,0x00ff\n"                "   jnz  3f\n"                "   ahi  %0,8\n"                "   srl  %2,8\n"                "3: nr   %2,%1\n"                "   ic   %2,0(%2,%5)\n"                "   alr  %0,%2\n"                "4:"                : "=&a" (res), "=&d" (cmp), "=&a" (count)                : "a" (size), "a" (addr), "a" (&_sb_findmap),		  "m" (*(addrtype *) addr) : "cc" );        return (res < size) ? res : size;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/afff7e2b3b13dbd26a2b9991d3d571df111d92e8/bitops.h/clean/include/asm-s390/bitops.h