Browse Source

common: fix usage of __has_builtin for old GCC releases

pull/2/head
Alibek Omarov 2 years ago
parent
commit
5d4f8373c4
  1. 24
      common/xash3d_types.h

24
common/xash3d_types.h

@ -87,15 +87,21 @@ typedef uint64_t longtime_t; @@ -87,15 +87,21 @@ typedef uint64_t longtime_t;
#define NORETURN
#endif
#if defined(__has_builtin)
#if __has_builtin(__builtin_expect)
#define unlikely(x) __builtin_expect(x, 0)
#define likely(x) __builtin_expect(x, 1)
#else // __has_builtin(__builtin_expect)
#define unlikely(x) (x)
#define likely(x) (x)
#endif // __has_builtin(__builtin_expect)
#endif // defined(__has_builtin)
#if ( __GNUC__ >= 3 )
#define unlikely(x) __builtin_expect(x, 0)
#define likely(x) __builtin_expect(x, 1)
#elif defined( __has_builtin )
#if __has_builtin( __builtin_expect )
#define unlikely(x) __builtin_expect(x, 0)
#define likely(x) __builtin_expect(x, 1)
#else
#define unlikely(x) (x)
#define likely(x) (x)
#endif
#else
#define unlikely(x) (x)
#define likely(x) (x)
#endif
#ifdef XASH_BIG_ENDIAN

Loading…
Cancel
Save