diff --git a/sys/alpha/include/endian.h b/sys/alpha/include/endian.h index 968d78c0542a..7906ea1eb7d8 100644 --- a/sys/alpha/include/endian.h +++ b/sys/alpha/include/endian.h @@ -112,11 +112,20 @@ __bswap16(__uint16_t __x) return (__r); } -#endif /* __GNUC__ */ - #define __htonl(x) __bswap32(x) #define __htons(x) __bswap16(x) #define __ntohl(x) __bswap32(x) #define __ntohs(x) __bswap16(x) +#else /* !__GNUC__ */ + +/* + * No optimizations are available for this compiler. Fall back to + * non-optimized functions by defining the constant usually used to prevent + * redefinition. + */ +#define _BYTEORDER_FUNC_DEFINED + +#endif /* __GNUC__ */ + #endif /* !_MACHINE_ENDIAN_H_ */ diff --git a/sys/amd64/include/endian.h b/sys/amd64/include/endian.h index c979683c64e7..723a5f3d4fea 100644 --- a/sys/amd64/include/endian.h +++ b/sys/amd64/include/endian.h @@ -109,11 +109,20 @@ __bswap16(__uint16_t _x) return (__byte_swap_word(_x)); } -#endif /* __GNUC__ */ - #define __htonl(x) __bswap32(x) #define __htons(x) __bswap16(x) #define __ntohl(x) __bswap32(x) #define __ntohs(x) __bswap16(x) +#else /* !__GNUC__ */ + +/* + * No optimizations are available for this compiler. Fall back to + * non-optimized functions by defining the constant usually used to prevent + * redefinition. + */ +#define _BYTEORDER_FUNC_DEFINED + +#endif /* __GNUC__ */ + #endif /* !_MACHINE_ENDIAN_H_ */ diff --git a/sys/i386/include/endian.h b/sys/i386/include/endian.h index c8b86eed3516..d68653259ecb 100644 --- a/sys/i386/include/endian.h +++ b/sys/i386/include/endian.h @@ -117,11 +117,20 @@ __bswap16(__uint16_t _x) return (__byte_swap_word(_x)); } -#endif /* __GNUC__ */ - #define __htonl(x) __bswap32(x) #define __htons(x) __bswap16(x) #define __ntohl(x) __bswap32(x) #define __ntohs(x) __bswap16(x) +#else /* !__GNUC__ */ + +/* + * No optimizations are available for this compiler. Fall back to + * non-optimized functions by defining the constant usually used to prevent + * redefinition. + */ +#define _BYTEORDER_FUNC_DEFINED + +#endif /* __GNUC__ */ + #endif /* !_MACHINE_ENDIAN_H_ */ diff --git a/sys/ia64/include/endian.h b/sys/ia64/include/endian.h index 7ba8bbfbb999..c3d42cc2fbd9 100644 --- a/sys/ia64/include/endian.h +++ b/sys/ia64/include/endian.h @@ -93,11 +93,20 @@ __bswap16(__uint16_t __x) return (__bswap64(__x) >> 48); } -#endif /* __GNUC__ */ - #define __htonl(x) __bswap32(x) #define __htons(x) __bswap16(x) #define __ntohl(x) __bswap32(x) #define __ntohs(x) __bswap16(x) +#else /* !__GNUC__ */ + +/* + * No optimizations are available for this compiler. Fall back to + * non-optimized functions by defining the constant usually used to prevent + * redefinition. + */ +#define _BYTEORDER_FUNC_DEFINED + +#endif /* __GNUC__ */ + #endif /* !_MACHINE_ENDIAN_H_ */ diff --git a/sys/powerpc/include/endian.h b/sys/powerpc/include/endian.h index a0f08a057991..5d1c1cacad90 100644 --- a/sys/powerpc/include/endian.h +++ b/sys/powerpc/include/endian.h @@ -95,11 +95,20 @@ __bswap64(__uint64_t _x) ((_x << 40) & ((__uint64_t)0xff << 48)) | ((_x << 56))); } -#endif /* __GNUC__ */ - #define __htonl(x) ((__uint32_t)(x)) #define __htons(x) ((__uint16_t)(x)) #define __ntohl(x) ((__uint32_t)(x)) #define __ntohs(x) ((__uint16_t)(x)) +#else /* !__GNUC__ */ + +/* + * No optimizations are available for this compiler. Fall back to + * non-optimized functions by defining the constant usually used to prevent + * redefinition. + */ +#define _BYTEORDER_FUNC_DEFINED + +#endif /* __GNUC__ */ + #endif /* !_MACHINE_ENDIAN_H_ */ diff --git a/sys/sparc64/include/endian.h b/sys/sparc64/include/endian.h index e8ee18400ae2..f10032c62799 100644 --- a/sys/sparc64/include/endian.h +++ b/sys/sparc64/include/endian.h @@ -94,11 +94,20 @@ __bswap64(__uint64_t _x) ((_x << 40) & ((__uint64_t)0xff << 48)) | ((_x << 56))); } -#endif /* __GNUC__ */ - #define __htonl(x) ((__uint32_t)(x)) #define __htons(x) ((__uint16_t)(x)) #define __ntohl(x) ((__uint32_t)(x)) #define __ntohs(x) ((__uint16_t)(x)) +#else /* !__GNUC__ */ + +/* + * No optimizations are available for this compiler. Fall back to + * non-optimized functions by defining the constant usually used to prevent + * redefinition. + */ +#define _BYTEORDER_FUNC_DEFINED + +#endif /* __GNUC__ */ + #endif /* !_MACHINE_ENDIAN_H_ */