[U-Boot] [RFC PATCH 03/20] sandbox: Add compiler defines to support a 64-bit x86_64 platform

Simon Glass sjg at chromium.org
Sat Sep 17 18:48:42 CEST 2011


Temporary fix for 64-bit building.

Signed-off-by: Simon Glass <sjg at chromium.org>
---
 include/compiler.h |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/include/compiler.h b/include/compiler.h
index 4e047c7..78f8f0a 100644
--- a/include/compiler.h
+++ b/include/compiler.h
@@ -111,11 +111,21 @@ typedef unsigned int uint;
 #include <linux/types.h>
 #include <asm/byteorder.h>
 
+#if __SIZEOF_LONG__ == 8
+# define __WORDSIZE	64
+#elif __SIZEOF_LONG__ == 4
+# define __WORDSIZE	32
+#else
+#error "__SIZEOF_LONG__ has unexpected value"
+#endif
+
 /* Types for `void *' pointers. */
 #if __WORDSIZE == 64
 typedef unsigned long int       uintptr_t;
-#else
+#elif __WORDSIZE == 32
 typedef unsigned int            uintptr_t;
+#else
+#error "__WORDSIZE has unexpected value"
 #endif
 
 #endif
-- 
1.7.3.1



More information about the U-Boot mailing list