summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/include/endian.h
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/include/endian.h')
-rw-r--r--mdk-stage1/dietlibc/include/endian.h45
1 files changed, 32 insertions, 13 deletions
diff --git a/mdk-stage1/dietlibc/include/endian.h b/mdk-stage1/dietlibc/include/endian.h
index 463c24fff..93b1f2948 100644
--- a/mdk-stage1/dietlibc/include/endian.h
+++ b/mdk-stage1/dietlibc/include/endian.h
@@ -4,35 +4,42 @@
#define __LITTLE_ENDIAN 1234
#define __BIG_ENDIAN 4321
-#ifdef __i386__
-#define __BYTE_ORDER __LITTLE_ENDIAN
-#define __FLOAT_WORD_ORDER __BYTE_ORDER
+#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__)
+#define __BYTE_ORDER __LITTLE_ENDIAN
+#define __FLOAT_WORD_ORDER __BYTE_ORDER
#endif
#ifdef __sparc__
-#define __BYTE_ORDER __BIG_ENDIAN
-#define __FLOAT_WORD_ORDER __BYTE_ORDER
+#define __BYTE_ORDER __BIG_ENDIAN
+#define __FLOAT_WORD_ORDER __BYTE_ORDER
+#endif
+
+#ifdef __hppa__
+/* I hope this is correct...? */
+#define __BYTE_ORDER __BIG_ENDIAN
+#define __FLOAT_WORD_ORDER __BYTE_ORDER
#endif
#ifdef __mips__
#ifdef __MIPSEB__
-#define __BIG_ENDIAN__
+#define __BYTE_ORDER __BIG_ENDIAN
+#define __FLOAT_WORD_ORDER __BYTE_ORDER
#endif
#endif
#ifndef __BYTE_ORDER
#ifdef __BIG_ENDIAN__
-#define __BYTE_ORDER __BIG_ENDIAN
-#define __FLOAT_WORD_ORDER __BYTE_ORDER
+#define __BYTE_ORDER __BIG_ENDIAN
+#define __FLOAT_WORD_ORDER __BYTE_ORDER
#else
-#define __BYTE_ORDER __LITTLE_ENDIAN
-#define __FLOAT_WORD_ORDER __BYTE_ORDER
+#define __BYTE_ORDER __LITTLE_ENDIAN
+#define __FLOAT_WORD_ORDER __BYTE_ORDER
#endif
#endif
-#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
#if __BYTE_ORDER == __LITTLE_ENDIAN
# define __LONG_LONG_PAIR(HI, LO) LO, HI
@@ -40,4 +47,16 @@
# define __LONG_LONG_PAIR(HI, LO) HI, LO
#endif
+#if defined(__alpha__) || defined(__mips64) || defined(__sparc_v9__) || defined(__x86_64__) || defined(__ia64__)
+#define __WORDSIZE 64
+#endif
+
+#if defined(__sparc__) && (__arch64__)
+#define __WORDSIZE 64
+#endif
+
+#ifndef __WORDSIZE
+#define __WORDSIZE 32
+#endif
+
#endif