X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=src%2Fcommon%2Fcompat%2Fendian.hpp;h=642e23b0c433cd7bd0765c961e7a97fdd2b6cb98;hb=28f23191dcbf047429d51950a337a57d7a3f866a;hp=ff383763461f19e32d76439275755f27524ea5a3;hpb=f250b40e2179eccdb83766bf4abef5a35036c47b;p=lttng-tools.git diff --git a/src/common/compat/endian.hpp b/src/common/compat/endian.hpp index ff3837634..642e23b0c 100644 --- a/src/common/compat/endian.hpp +++ b/src/common/compat/endian.hpp @@ -38,8 +38,8 @@ #define _COMPAT_ENDIAN_H #if defined(__linux__) || defined(__CYGWIN__) -#include #include +#include /* * htobe/betoh are not defined for glibc <2.9, so add them @@ -47,97 +47,97 @@ */ #ifdef __USE_BSD /* Conversion interfaces. */ -# include - -# if __BYTE_ORDER == __LITTLE_ENDIAN -# ifndef htobe16 -# define htobe16(x) __bswap_16(x) -# endif -# ifndef htole16 -# define htole16(x) (x) -# endif -# ifndef be16toh -# define be16toh(x) __bswap_16(x) -# endif -# ifndef le16toh -# define le16toh(x) (x) -# endif - -# ifndef htobe32 -# define htobe32(x) __bswap_32(x) -# endif -# ifndef htole32 -# define htole32(x) (x) -# endif -# ifndef be32toh -# define be32toh(x) __bswap_32(x) -# endif -# ifndef le32toh -# define le32toh(x) (x) -# endif - -# ifndef htobe64 -# define htobe64(x) __bswap_64(x) -# endif -# ifndef htole64 -# define htole64(x) (x) -# endif -# ifndef be64toh -# define be64toh(x) __bswap_64(x) -# endif -# ifndef le64toh -# define le64toh(x) (x) -# endif - -# else /* __BYTE_ORDER == __LITTLE_ENDIAN */ -# ifndef htobe16 -# define htobe16(x) (x) -# endif -# ifndef htole16 -# define htole16(x) __bswap_16(x) -# endif -# ifndef be16toh -# define be16toh(x) (x) -# endif -# ifndef le16toh -# define le16toh(x) __bswap_16(x) -# endif - -# ifndef htobe32 -# define htobe32(x) (x) -# endif -# ifndef htole32 -# define htole32(x) __bswap_32(x) -# endif -# ifndef be32toh -# define be32toh(x) (x) -# endif -# ifndef le32toh -# define le32toh(x) __bswap_32(x) -# endif - -# ifndef htobe64 -# define htobe64(x) (x) -# endif -# ifndef htole64 -# define htole64(x) __bswap_64(x) -# endif -# ifndef be64toh -# define be64toh(x) (x) -# endif -# ifndef le64toh -# define le64toh(x) __bswap_64(x) -# endif - -# endif /* __BYTE_ORDER == __LITTLE_ENDIAN */ +#include + +#if __BYTE_ORDER == __LITTLE_ENDIAN +#ifndef htobe16 +#define htobe16(x) __bswap_16(x) +#endif +#ifndef htole16 +#define htole16(x) (x) +#endif +#ifndef be16toh +#define be16toh(x) __bswap_16(x) +#endif +#ifndef le16toh +#define le16toh(x) (x) +#endif + +#ifndef htobe32 +#define htobe32(x) __bswap_32(x) +#endif +#ifndef htole32 +#define htole32(x) (x) +#endif +#ifndef be32toh +#define be32toh(x) __bswap_32(x) +#endif +#ifndef le32toh +#define le32toh(x) (x) +#endif + +#ifndef htobe64 +#define htobe64(x) __bswap_64(x) +#endif +#ifndef htole64 +#define htole64(x) (x) +#endif +#ifndef be64toh +#define be64toh(x) __bswap_64(x) +#endif +#ifndef le64toh +#define le64toh(x) (x) +#endif + +#else /* __BYTE_ORDER == __LITTLE_ENDIAN */ +#ifndef htobe16 +#define htobe16(x) (x) +#endif +#ifndef htole16 +#define htole16(x) __bswap_16(x) +#endif +#ifndef be16toh +#define be16toh(x) (x) +#endif +#ifndef le16toh +#define le16toh(x) __bswap_16(x) +#endif + +#ifndef htobe32 +#define htobe32(x) (x) +#endif +#ifndef htole32 +#define htole32(x) __bswap_32(x) +#endif +#ifndef be32toh +#define be32toh(x) (x) +#endif +#ifndef le32toh +#define le32toh(x) __bswap_32(x) +#endif + +#ifndef htobe64 +#define htobe64(x) (x) +#endif +#ifndef htole64 +#define htole64(x) __bswap_64(x) +#endif +#ifndef be64toh +#define be64toh(x) (x) +#endif +#ifndef le64toh +#define le64toh(x) __bswap_64(x) +#endif + +#endif /* __BYTE_ORDER == __LITTLE_ENDIAN */ #endif /* __USE_BSD */ #elif defined(__FreeBSD__) #include -#define bswap_16(x) bswap16(x) -#define bswap_32(x) bswap32(x) -#define bswap_64(x) bswap64(x) +#define bswap_16(x) bswap16(x) +#define bswap_32(x) bswap32(x) +#define bswap_64(x) bswap64(x) #elif defined(__sun__) #include @@ -155,9 +155,9 @@ #define __BYTE_ORDER __BIG_ENDIAN #endif /* _BIG_ENDIAN */ -#define LITTLE_ENDIAN __LITTLE_ENDIAN -#define BIG_ENDIAN __BIG_ENDIAN -#define BYTE_ORDER __BYTE_ORDER +#define LITTLE_ENDIAN __LITTLE_ENDIAN +#define BIG_ENDIAN __BIG_ENDIAN +#define BYTE_ORDER __BYTE_ORDER #define betoh16(x) BE_16(x) #define letoh16(x) LE_16(x) @@ -173,41 +173,41 @@ #define be64toh(x) BE_64(x) #elif defined(__APPLE__) -# include -# include - -# if BYTE_ORDER == LITTLE_ENDIAN -# define htobe16(x) OSSwapConstInt16(x) -# define htole16(x) (x) -# define be16toh(x) OSSwapConstInt16(x) -# define le16toh(x) (x) - -# define htobe32(x) OSSwapConstInt32(x) -# define htole32(x) (x) -# define be32toh(x) OSSwapConstInt32(x) -# define le32toh(x) (x) - -# define htobe64(x) OSSwapConstInt64(x) -# define htole64(x) (x) -# define be64toh(x) OSSwapConstInt64(x) -# define le64toh(x) (x) - -# else /* BYTE_ORDER == LITTLE_ENDIAN */ -# define htobe16(x) (x) -# define htole16(x) OSSwapConstInt16(x) -# define be16toh(x) (x) -# define le16toh(x) OSSwapConstInt16(x) - -# define htobe32(x) (x) -# define htole32(x) OSSwapConstInt32(x) -# define be32toh(x) (x) -# define le32toh(x) OSSwapConstInt32(x) - -# define htobe64(x) (x) -# define htole64(x) OSSwapConstInt64(x) -# define be64toh(x) (x) -# define le64toh(x) OSSwapConstInt64(x) -# endif +#include +#include + +#if BYTE_ORDER == LITTLE_ENDIAN +#define htobe16(x) OSSwapConstInt16(x) +#define htole16(x) (x) +#define be16toh(x) OSSwapConstInt16(x) +#define le16toh(x) (x) + +#define htobe32(x) OSSwapConstInt32(x) +#define htole32(x) (x) +#define be32toh(x) OSSwapConstInt32(x) +#define le32toh(x) (x) + +#define htobe64(x) OSSwapConstInt64(x) +#define htole64(x) (x) +#define be64toh(x) OSSwapConstInt64(x) +#define le64toh(x) (x) + +#else /* BYTE_ORDER == LITTLE_ENDIAN */ +#define htobe16(x) (x) +#define htole16(x) OSSwapConstInt16(x) +#define be16toh(x) (x) +#define le16toh(x) OSSwapConstInt16(x) + +#define htobe32(x) (x) +#define htole32(x) OSSwapConstInt32(x) +#define be32toh(x) (x) +#define le32toh(x) OSSwapConstInt32(x) + +#define htobe64(x) (x) +#define htole64(x) OSSwapConstInt64(x) +#define be64toh(x) (x) +#define le64toh(x) OSSwapConstInt64(x) +#endif #else #error "Please add support for your OS."