Fixed 64-bit clz/ctz.

This commit is contained in:
Branimir Karadžić
2015-04-01 14:38:24 -07:00
parent 4464492267
commit 7b7bd3ce0d

View File

@@ -648,7 +648,7 @@ namespace bx
inline uint64_t uint64_cntlz(uint64_t _val)
{
#if BX_COMPILER_GCC || BX_COMPILER_CLANG
return __builtin_clz(_val);
return __builtin_clzll(_val);
#elif BX_COMPILER_MSVC && BX_PLATFORM_WINDOWS && BX_ARCH_64BIT
unsigned long index;
_BitScanReverse64(&index, _val);
@@ -669,7 +669,7 @@ namespace bx
inline uint64_t uint64_cnttz(uint64_t _val)
{
#if BX_COMPILER_GCC || BX_COMPILER_CLANG
return __builtin_ctzl(_val);
return __builtin_ctzll(_val);
#elif BX_COMPILER_MSVC && BX_PLATFORM_WINDOWS && BX_ARCH_64BIT
unsigned long index;
_BitScanForward64(&index, _val);