home: hub: 9ficl

Download patch

ref: a3fa8340d19d64b72825b21ab5ac55a3c0426a10
parent: 3cfc038f81eb033a6239f21046ede2a5a26656cd
author: asau <asau@ficl.sf.net>
date: Fri Sep 10 08:31:43 CDT 2010

Use 64-bit types on amd64.
Adjust alignment accordingly.
No double width integer option there.

--- a/ficlplatform/unix.h
+++ b/ficlplatform/unix.h
@@ -7,11 +7,19 @@
 #define FICL_PLATFORM_ARCHITECTURE    "unknown"
 
 #define FICL_PLATFORM_BASIC_TYPES     (1)
+#if defined(__amd64__)
+#define FICL_PLATFORM_ALIGNMENT       (8)
+#else
 #define FICL_PLATFORM_ALIGNMENT       (4)
+#endif
 #define FICL_PLATFORM_INLINE          inline
 
 #define FICL_PLATFORM_HAS_FTRUNCATE   (1)
+#if defined(__amd64__)
+#define FICL_PLATFORM_HAS_2INTEGER    (0)
+#else
 #define FICL_PLATFORM_HAS_2INTEGER    (1)
+#endif
 
 typedef int8_t ficlInteger8;
 typedef uint8_t ficlUnsigned8;
@@ -22,8 +30,13 @@
 typedef int64_t ficlInteger64;
 typedef uint64_t ficlUnsigned64;
 
+#if defined(__amd64__)
+typedef ficlInteger64 ficlInteger;
+typedef ficlUnsigned64 ficlUnsigned;
+#else /* default */
 typedef intptr_t ficlInteger;
 typedef uintptr_t ficlUnsigned;
+#endif
 typedef float ficlFloat;
 
 #if defined(FICL_PLATFORM_HAS_2INTEGER) && FICL_PLATFORM_HAS_2INTEGER