diff options
Diffstat (limited to 'mps/code/mpstd.h')
| -rw-r--r-- | mps/code/mpstd.h | 41 |
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__) \ |