byteorder: Explicitly check for htoXeXX macros
Some platforms have XetohXX macros instead of XeXXtoh macros, in which case we'd redefine the htoXeXX macros.
This commit is contained in:
@@ -47,9 +47,14 @@
|
|||||||
#ifndef le32toh
|
#ifndef le32toh
|
||||||
# if BYTE_ORDER == BIG_ENDIAN
|
# if BYTE_ORDER == BIG_ENDIAN
|
||||||
# define le32toh(x) __builtin_bswap32(x)
|
# define le32toh(x) __builtin_bswap32(x)
|
||||||
# define htole32(x) __builtin_bswap32(x)
|
|
||||||
# else
|
# else
|
||||||
# define le32toh(x) (x)
|
# define le32toh(x) (x)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
#ifndef htole32
|
||||||
|
# if BYTE_ORDER == BIG_ENDIAN
|
||||||
|
# define htole32(x) __builtin_bswap32(x)
|
||||||
|
# else
|
||||||
# define htole32(x) (x)
|
# define htole32(x) (x)
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
@@ -57,9 +62,14 @@
|
|||||||
#ifndef le64toh
|
#ifndef le64toh
|
||||||
# if BYTE_ORDER == BIG_ENDIAN
|
# if BYTE_ORDER == BIG_ENDIAN
|
||||||
# define le64toh(x) __builtin_bswap64(x)
|
# define le64toh(x) __builtin_bswap64(x)
|
||||||
# define htole64(x) __builtin_bswap64(x)
|
|
||||||
# else
|
# else
|
||||||
# define le64toh(x) (x)
|
# define le64toh(x) (x)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
#ifndef htole64
|
||||||
|
# if BYTE_ORDER == BIG_ENDIAN
|
||||||
|
# define htole64(x) __builtin_bswap64(x)
|
||||||
|
# else
|
||||||
# define htole64(x) (x)
|
# define htole64(x) (x)
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
@@ -67,9 +77,14 @@
|
|||||||
#ifndef be64toh
|
#ifndef be64toh
|
||||||
# if BYTE_ORDER == BIG_ENDIAN
|
# if BYTE_ORDER == BIG_ENDIAN
|
||||||
# define be64toh(x) (x)
|
# define be64toh(x) (x)
|
||||||
# define htobe64(x) (x)
|
|
||||||
# else
|
# else
|
||||||
# define be64toh(x) __builtin_bswap64(x)
|
# define be64toh(x) __builtin_bswap64(x)
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
#ifndef htobe64
|
||||||
|
# if BYTE_ORDER == BIG_ENDIAN
|
||||||
|
# define htobe64(x) (x)
|
||||||
|
# else
|
||||||
# define htobe64(x) __builtin_bswap64(x)
|
# define htobe64(x) __builtin_bswap64(x)
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user