aboutsummaryrefslogtreecommitdiffstats
path: root/mps/code/mpstd.h
diff options
context:
space:
mode:
Diffstat (limited to 'mps/code/mpstd.h')
-rw-r--r--mps/code/mpstd.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/mps/code/mpstd.h b/mps/code/mpstd.h
index c7360ed942c..eb7021c4ba0 100644
--- a/mps/code/mpstd.h
+++ b/mps/code/mpstd.h
@@ -149,6 +149,30 @@
149#define MPS_WORD_SHIFT 5 149#define MPS_WORD_SHIFT 5
150#define MPS_PF_ALIGN 8 150#define MPS_PF_ALIGN 8
151 151
152
153/* Duplicated from W3I3MV, then... @@@@
154 * "Predefined Macros" from "Visual Studio 2010" on MSDN
155 * <http://msdn.microsoft.com/en-us/library/b0084kay(v=vs.100).aspx>.
156 * Note that Win32 includes 64-bit Windows!
157 */
158
159#elif defined(_MSC_VER) && defined(_WIN32) && defined(_WIN64) && defined(_M_X64)
160#if defined(CONFIG_PF_STRING) && ! defined(CONFIG_PF_W3I6MV)
161#error "specified CONFIG_PF_... inconsistent with detected w3i6mv"
162#endif
163#define MPS_PF_W3I6MV
164#define MPS_PF_STRING "w3i6mv"
165#define MPS_OS_W3
166#define MPS_ARCH_I6
167#define MPS_BUILD_MV
168#define MPS_T_WORD unsigned __int64
169#define MPS_T_LONGEST __int64
170#define MPS_T_ULONGEST unsigned __int64
171#define MPS_WORD_WIDTH 64
172#define MPS_WORD_SHIFT 6
173#define MPS_PF_ALIGN 16 /* @@@@ ref? */
174
175
152/* MW C/C++/ASM Lang Ref (CW9), pp. 184-186. Metrowerks does not document 176/* MW C/C++/ASM Lang Ref (CW9), pp. 184-186. Metrowerks does not document
153 * a way to determine the OS -- we assume MacOS 7. 177 * a way to determine the OS -- we assume MacOS 7.
154 */ 178 */
@@ -265,6 +289,23 @@
265#define MPS_WORD_SHIFT 5 289#define MPS_WORD_SHIFT 5
266#define MPS_PF_ALIGN 4 /* I'm just guessing. */ 290#define MPS_PF_ALIGN 4 /* I'm just guessing. */
267 291
292/* @@@@ fill in */
293
294#elif defined(__APPLE__) && defined(__x86_64__) && defined(__MACH__) \
295 && defined(__GNUC__)
296#if defined(CONFIG_PF_STRING) && ! defined(CONFIG_PF_XCI6GC)
297#error "specified CONFIG_PF_... inconsistent with detected xci6gc"
298#endif
299#define MPS_PF_XCI6GC
300#define MPS_PF_STRING "xci6gc"
301#define MPS_OS_XC
302#define MPS_ARCH_I6
303#define MPS_BUILD_GC
304#define MPS_T_WORD unsigned long
305#define MPS_WORD_WIDTH 64
306#define MPS_WORD_SHIFT 6
307#define MPS_PF_ALIGN 8 /* I'm just guessing. */
308
268/* GCC 2.5.8, gcc -E -dM, (__SVR4 indicates Solaris) */ 309/* GCC 2.5.8, gcc -E -dM, (__SVR4 indicates Solaris) */
269 310
270#elif defined(__sun__) && defined(__sparc__) && defined(__GNUC__) \ 311#elif defined(__sun__) && defined(__sparc__) && defined(__GNUC__) \