aboutsummaryrefslogtreecommitdiff
path: root/sys/sparc64/include/endian.h
diff options
context:
space:
mode:
authorMike Barcroft <mike@FreeBSD.org>2002-09-23 04:32:17 +0000
committerMike Barcroft <mike@FreeBSD.org>2002-09-23 04:32:17 +0000
commitc0d4804d67d4b1b4d5df4778a1c718a918878050 (patch)
treead7926a9810fc157f35d5f4b75967c4d275920dc /sys/sparc64/include/endian.h
parent33e2cd4e8d347f9cee7de2158582c998d51f542b (diff)
downloadsrc-c0d4804d67d4b1b4d5df4778a1c718a918878050.tar.gz
src-c0d4804d67d4b1b4d5df4778a1c718a918878050.zip
Be careful not to define GCC-specific optimizations in the non-GCC
case.
Notes
Notes: svn path=/head/; revision=103814
Diffstat (limited to 'sys/sparc64/include/endian.h')
-rw-r--r--sys/sparc64/include/endian.h13
1 files changed, 11 insertions, 2 deletions
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_ */