Fix compilation issues on linux 64 machines
This commit is contained in:
+10
-1
@@ -56,7 +56,12 @@ namespace crnlib
|
||||
|
||||
template<typename T> inline T square(T value) { return value * value; }
|
||||
|
||||
#ifdef __GNUC__
|
||||
#if CRNLIB_64BIT_POINTERS==0
|
||||
inline bool is_power_of_2(uint32 x) { return x && ((x & (x - 1U)) == 0U); }
|
||||
#endif
|
||||
#endif
|
||||
|
||||
inline bool is_power_of_2(uint64 x) { return x && ((x & (x - 1U)) == 0U); }
|
||||
|
||||
template<typename T> inline T align_up_value(T x, uint alignment)
|
||||
@@ -79,7 +84,9 @@ namespace crnlib
|
||||
{
|
||||
return align_up_value(x, alignment) - x;
|
||||
}
|
||||
|
||||
|
||||
#ifdef __GNUC__
|
||||
#if CRNLIB_64BIT_POINTERS==0
|
||||
// From "Hackers Delight"
|
||||
inline uint32 next_pow2(uint32 val)
|
||||
{
|
||||
@@ -91,6 +98,8 @@ namespace crnlib
|
||||
val |= val >> 1;
|
||||
return val + 1;
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
inline uint64 next_pow2(uint64 val)
|
||||
{
|
||||
|
||||
+2
-1
@@ -52,6 +52,7 @@ namespace crnlib
|
||||
} // namespace crnlib
|
||||
|
||||
using namespace crnlib;
|
||||
using crnlib::uint;
|
||||
|
||||
const char* crn_get_format_string(crn_format fmt)
|
||||
{
|
||||
@@ -456,4 +457,4 @@ bool crn_decompress_block(const void *pSrc_block, crn_uint32 *pDst_pixels_u32, c
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -374,7 +374,7 @@ namespace crnd
|
||||
|
||||
const uint32 cIntBits = 32U;
|
||||
|
||||
#ifdef _WIN64
|
||||
#if CRNLIB_64BIT_POINTERS
|
||||
typedef uint64 ptr_bits;
|
||||
#else
|
||||
typedef uint32 ptr_bits;
|
||||
|
||||
Reference in New Issue
Block a user