shithub: hj264

ref: 97b0ebb4108acac122371253a54785ef54281648
dir: hj264/builtins.c

View raw version
int
__builtin_clz(unsigned int x)
{
	unsigned int r;
	if(x == 0)
		return 32;
	for(r = 0; (x & (1UL<<31)) == 0; x <<= 1, r++);
	return r;
}

unsigned int
__builtin_bswap32(unsigned int x)
{
	return ((x >> 24) & 0xff) | ((x >> 8) & 0xff00) | ((x << 8) & 0xff0000) | ((x & 0xff) << 24);
}