ref: 920df845198f6d995ddeaab586526ab1ec3b9ccc
dir: /builtins.c/
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); }