From: Vsevolod Stakhov Date: Wed, 1 Feb 2017 13:07:43 +0000 (+0000) Subject: [Minor] Improve portability X-Git-Tag: 1.5.0~202 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=41dc9d8afff3b11110e190a6869959f415b8dc7b;p=rspamd.git [Minor] Improve portability --- diff --git a/contrib/mumhash/mum.h b/contrib/mumhash/mum.h index ae6eec16c..9fab8e7bc 100644 --- a/contrib/mumhash/mum.h +++ b/contrib/mumhash/mum.h @@ -62,7 +62,7 @@ typedef unsigned __int64 uint64_t; /* In GCC uint128_t is defined if HOST_BITS_PER_WIDE_INT >= 64. HOST_WIDE_INT is long if HOST_BITS_PER_LONG > HOST_BITS_PER_INT, otherwise int. */ -#if defined(__GNUC__) && UINT_MAX != ULONG_MAX +#ifdef __SIZEOF_INT128__ #define _MUM_USE_INT128 1 #else #define _MUM_USE_INT128 0 @@ -73,7 +73,7 @@ typedef unsigned __int64 uint64_t; #define _MUM_FRESH_GCC #endif -#if defined(__GNUC__) && !defined(__llvm__) +#if !defined(__llvm__) && defined(_MUM_FRESH_GCC) #define _MUM_ATTRIBUTE_UNUSED __attribute__((unused)) #define _MUM_OPTIMIZE(opts) __attribute__((__optimize__ (opts))) #define _MUM_TARGET(opts) __attribute__((__target__ (opts))) diff --git a/contrib/t1ha/t1ha.h b/contrib/t1ha/t1ha.h index 2f6e48e3f..1ad763c3a 100644 --- a/contrib/t1ha/t1ha.h +++ b/contrib/t1ha/t1ha.h @@ -113,7 +113,15 @@ #endif #define likely(cond) __builtin_expect(!!(cond), 1) #define unlikely(cond) __builtin_expect(!!(cond), 0) +# if __GNUC_PREREQ(4, 6) || defined(__clang__) #define unreachable() __builtin_unreachable() +# else +#define unreachable() \ + do { \ + for (;;) \ + ; \ + } while (0) +# endif #define bswap64(v) __builtin_bswap64(v) #define bswap32(v) __builtin_bswap32(v) #if __GNUC_PREREQ(4, 8) || __has_builtin(__builtin_bswap16)