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