From: Tom G. Christensen Date: Wed, 4 Feb 2015 08:23:16 +0000 (+0100) Subject: ewah: fix building with gcc < 3.4.0 X-Git-Tag: v2.3.2~19^2 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/bd4e8822da3bf6ce28a0c5f7c1bbf1b6341c0586?ds=inline;hp=--cc ewah: fix building with gcc < 3.4.0 The __builtin_ctzll function was added in gcc 3.4.0. This extends the check for gcc so that use of __builtin_ctzll is only enabled if gcc >= 3.4.0. Signed-off-by: Tom G. Christensen Reviewed-by: Jeff King Signed-off-by: Junio C Hamano --- bd4e8822da3bf6ce28a0c5f7c1bbf1b6341c0586 diff --git a/ewah/ewok.h b/ewah/ewok.h index 43adeb5c68..4b95847680 100644 --- a/ewah/ewok.h +++ b/ewah/ewok.h @@ -47,7 +47,8 @@ static inline uint32_t ewah_bit_popcount64(uint64_t x) return (x * 0x0101010101010101ULL) >> 56; } -#ifdef __GNUC__ +/* __builtin_ctzll was not available until 3.4.0 */ +#if defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR > 3)) #define ewah_bit_ctz64(x) __builtin_ctzll(x) #else static inline int ewah_bit_ctz64(uint64_t x)