diff options
| author | Edward Thomson <ethomson@github.com> | 2017-01-22 01:42:45 +0000 |
|---|---|---|
| committer | Edward Thomson <ethomson@github.com> | 2017-01-23 22:29:58 +0000 |
| commit | a0d384798312df3b2c79194ced81bf5a3d2afddc (patch) | |
| tree | 730406a36f470e912f4bbac421082b173b8eafa4 /src/integer.h | |
| parent | 60c2bf47e40d86f1fcf9b9b928666ed2b06d0e4d (diff) | |
| download | libgit2-a0d384798312df3b2c79194ced81bf5a3d2afddc.tar.gz | |
mac: on 32 bit, use `__builtin_umull_overflow`
Diffstat (limited to 'src/integer.h')
| -rw-r--r-- | src/integer.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/integer.h b/src/integer.h index b08094c2f..61712cebf 100644 --- a/src/integer.h +++ b/src/integer.h @@ -55,16 +55,16 @@ GIT_INLINE(bool) git__add_uint64_overflow(uint64_t *out, uint64_t one, uint64_t } /* Use clang/gcc compiler intrinsics whenever possible */ -#if (SIZE_MAX == UINT_MAX) && __has_builtin(__builtin_uadd_overflow) -# define git__add_sizet_overflow(out, one, two) \ - __builtin_uadd_overflow(one, two, out) -# define git__multiply_sizet_overflow(out, one, two) \ - __builtin_umul_overflow(one, two, out) -#elif (SIZE_MAX == ULONG_MAX) && __has_builtin(__builtin_uaddl_overflow) +#if (SIZE_MAX == ULONG_MAX) && __has_builtin(__builtin_uaddl_overflow) # define git__add_sizet_overflow(out, one, two) \ __builtin_uaddl_overflow(one, two, out) # define git__multiply_sizet_overflow(out, one, two) \ __builtin_umull_overflow(one, two, out) +#elif (SIZE_MAX == UINT_MAX) && __has_builtin(__builtin_uadd_overflow) +# define git__add_sizet_overflow(out, one, two) \ + __builtin_uadd_overflow(one, two, out) +# define git__multiply_sizet_overflow(out, one, two) \ + __builtin_umul_overflow(one, two, out) #else /** |
