ref: 9b69b3a085047cf76cccd16ed098cf040436c68d
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); }