diff options
author | Junio C Hamano <gitster@pobox.com> | 2016-01-20 11:43:29 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-01-20 11:43:29 -0800 |
commit | a736764a7b61534581021a21bc6bfc503b9cfa8f (patch) | |
tree | afc0d6affb5a41ef36c169200c17deadbc4d0ff8 /compat | |
parent | Merge branch 'ew/send-email-mutt-alias-fix' (diff) | |
parent | bswap: add NO_UNALIGNED_LOADS define (diff) | |
download | tgif-a736764a7b61534581021a21bc6bfc503b9cfa8f.tar.xz |
Merge branch 'jk/clang-pedantic'
A few unportable C construct have been spotted by clang compiler
and have been fixed.
* jk/clang-pedantic:
bswap: add NO_UNALIGNED_LOADS define
avoid shifting signed integers 31 bits
Diffstat (limited to 'compat')
-rw-r--r-- | compat/bswap.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/compat/bswap.h b/compat/bswap.h index 7fed637ed0..d47c003544 100644 --- a/compat/bswap.h +++ b/compat/bswap.h @@ -149,11 +149,12 @@ static inline uint64_t git_bswap64(uint64_t x) * and is faster on architectures with memory alignment issues. */ -#if defined(__i386__) || defined(__x86_64__) || \ +#if !defined(NO_UNALIGNED_LOADS) && ( \ + defined(__i386__) || defined(__x86_64__) || \ defined(_M_IX86) || defined(_M_X64) || \ defined(__ppc__) || defined(__ppc64__) || \ defined(__powerpc__) || defined(__powerpc64__) || \ - defined(__s390__) || defined(__s390x__) + defined(__s390__) || defined(__s390x__)) #define get_be16(p) ntohs(*(unsigned short *)(p)) #define get_be32(p) ntohl(*(unsigned int *)(p)) |