diff options
Diffstat (limited to 'Utilities')
-rw-r--r-- | Utilities/cmliblzma/common/sysdefs.h | 10 | ||||
-rw-r--r-- | Utilities/cmliblzma/common/tuklib_integer.h | 17 |
2 files changed, 10 insertions, 17 deletions
diff --git a/Utilities/cmliblzma/common/sysdefs.h b/Utilities/cmliblzma/common/sysdefs.h index 5beda5c..7481e3d 100644 --- a/Utilities/cmliblzma/common/sysdefs.h +++ b/Utilities/cmliblzma/common/sysdefs.h @@ -16,6 +16,10 @@ #ifndef LZMA_SYSDEFS_H #define LZMA_SYSDEFS_H +#if defined(_MSC_VER) +# pragma warning(disable: 4028 4244 4761) +#endif + ////////////// // Includes // ////////////// @@ -46,6 +50,12 @@ # include <limits.h> #endif + +#if defined(_MSC_VER) && (_MSC_VER < 1310) +# define UINT64_C(n) n ## ui64 +#endif + + // Be more compatible with systems that have non-conforming inttypes.h. // We assume that int is 32-bit and that long is either 32-bit or 64-bit. // Full Autoconf test could be more correct, but this should work well enough. diff --git a/Utilities/cmliblzma/common/tuklib_integer.h b/Utilities/cmliblzma/common/tuklib_integer.h index 1897438..5e8262a 100644 --- a/Utilities/cmliblzma/common/tuklib_integer.h +++ b/Utilities/cmliblzma/common/tuklib_integer.h @@ -387,13 +387,6 @@ bsr32(uint32_t n) __asm__("bsrl %1, %0" : "=r" (i) : "rm" (n)); return i; -#elif defined(_MSC_VER) && _MSC_VER >= 1400 - // MSVC isn't supported by tuklib, but since this code exists, - // it doesn't hurt to have it here anyway. - uint32_t i; - _BitScanReverse((DWORD *)&i, n); - return i; - #else uint32_t i = 31; @@ -441,11 +434,6 @@ clz32(uint32_t n) : "=r" (i) : "rm" (n)); return i; -#elif defined(_MSC_VER) && _MSC_VER >= 1400 - uint32_t i; - _BitScanReverse((DWORD *)&i, n); - return i ^ 31U; - #else uint32_t i = 0; @@ -491,11 +479,6 @@ ctz32(uint32_t n) __asm__("bsfl %1, %0" : "=r" (i) : "rm" (n)); return i; -#elif defined(_MSC_VER) && _MSC_VER >= 1400 - uint32_t i; - _BitScanForward((DWORD *)&i, n); - return i; - #else uint32_t i = 0; |