diff options
Diffstat (limited to 'mps/code/mpstd.h')
| -rw-r--r-- | mps/code/mpstd.h | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/mps/code/mpstd.h b/mps/code/mpstd.h index 10d3d2833a6..1725639691f 100644 --- a/mps/code/mpstd.h +++ b/mps/code/mpstd.h | |||
| @@ -127,6 +127,7 @@ | |||
| 127 | #define MPS_WORD_SHIFT 5 | 127 | #define MPS_WORD_SHIFT 5 |
| 128 | #define MPS_PF_ALIGN 4 /* I'm just guessing. */ | 128 | #define MPS_PF_ALIGN 4 /* I'm just guessing. */ |
| 129 | 129 | ||
| 130 | |||
| 130 | /* Apple clang version 3.1, clang -E -dM */ | 131 | /* Apple clang version 3.1, clang -E -dM */ |
| 131 | 132 | ||
| 132 | #elif defined(__APPLE__) && defined(__i386__) && defined(__MACH__) \ | 133 | #elif defined(__APPLE__) && defined(__i386__) && defined(__MACH__) \ |
| @@ -145,6 +146,7 @@ | |||
| 145 | #define MPS_WORD_SHIFT 5 | 146 | #define MPS_WORD_SHIFT 5 |
| 146 | #define MPS_PF_ALIGN 4 /* I'm just guessing. */ | 147 | #define MPS_PF_ALIGN 4 /* I'm just guessing. */ |
| 147 | 148 | ||
| 149 | |||
| 148 | /* Apple clang version 3.1, clang -E -dM */ | 150 | /* Apple clang version 3.1, clang -E -dM */ |
| 149 | 151 | ||
| 150 | #elif defined(__APPLE__) && defined(__x86_64__) && defined(__MACH__) \ | 152 | #elif defined(__APPLE__) && defined(__x86_64__) && defined(__MACH__) \ |
| @@ -163,6 +165,7 @@ | |||
| 163 | #define MPS_WORD_SHIFT 6 | 165 | #define MPS_WORD_SHIFT 6 |
| 164 | #define MPS_PF_ALIGN 8 | 166 | #define MPS_PF_ALIGN 8 |
| 165 | 167 | ||
| 168 | |||
| 166 | /* GCC 2.6.3, gcc -E -dM | 169 | /* GCC 2.6.3, gcc -E -dM |
| 167 | * The actual granularity of GNU malloc is 8, but field alignments are | 170 | * The actual granularity of GNU malloc is 8, but field alignments are |
| 168 | * all 4. | 171 | * all 4. |
| @@ -183,6 +186,13 @@ | |||
| 183 | #define MPS_WORD_SHIFT 5 | 186 | #define MPS_WORD_SHIFT 5 |
| 184 | #define MPS_PF_ALIGN 4 | 187 | #define MPS_PF_ALIGN 4 |
| 185 | 188 | ||
| 189 | #ifndef _REENTRANT /* it's also defined by cc -pthread */ | ||
| 190 | #define _REENTRANT /* defines, e.g., pthread_mutexattr_settype */ | ||
| 191 | #endif | ||
| 192 | #define _XOPEN_SOURCE 500 /* to get POSIX signal handling */ | ||
| 193 | #define _GNU_SOURCE /* to get register numbers for prmci3li.c */ | ||
| 194 | |||
| 195 | |||
| 186 | /* GCC 4.6.3, gcc -E -dM */ | 196 | /* GCC 4.6.3, gcc -E -dM */ |
| 187 | 197 | ||
| 188 | #elif defined(__linux__) && defined(__x86_64) && defined(__GNUC__) | 198 | #elif defined(__linux__) && defined(__x86_64) && defined(__GNUC__) |
| @@ -200,22 +210,12 @@ | |||
| 200 | #define MPS_WORD_SHIFT 6 | 210 | #define MPS_WORD_SHIFT 6 |
| 201 | #define MPS_PF_ALIGN 8 | 211 | #define MPS_PF_ALIGN 8 |
| 202 | 212 | ||
| 203 | /* GCC 2.7.2, gcc -E -dM */ | 213 | #ifndef _REENTRANT /* it's also defined by cc -pthread */ |
| 204 | 214 | #define _REENTRANT /* defines, e.g., pthread_mutexattr_settype */ | |
| 205 | #elif defined(__linux__) && defined(__PPC__) && defined(__GNUC__) | ||
| 206 | #if defined(CONFIG_PF_STRING) && ! defined(CONFIG_PF_LIPPGC) | ||
| 207 | #error "specified CONFIG_PF_... inconsistent with detected lippgc" | ||
| 208 | #endif | 215 | #endif |
| 209 | #define MPS_PF_LIPPGC | 216 | #define _XOPEN_SOURCE 500 /* to get POSIX signal handling */ |
| 210 | #define MPS_PF_STRING "lippgc" | 217 | #define _GNU_SOURCE /* to get register numbers for prmci3li.c */ |
| 211 | #define MPS_OS_LI | 218 | |
| 212 | #define MPS_ARCH_PP | ||
| 213 | #define MPS_BUILD_GC | ||
| 214 | #define MPS_T_WORD unsigned long | ||
| 215 | #define MPS_T_ULONGEST unsigned long | ||
| 216 | #define MPS_WORD_WIDTH 32 | ||
| 217 | #define MPS_WORD_SHIFT 5 | ||
| 218 | #define MPS_PF_ALIGN 8 /* @@@@ not tested */ | ||
| 219 | 219 | ||
| 220 | /* GCC 2.95.3, gcc -E -dM */ | 220 | /* GCC 2.95.3, gcc -E -dM */ |
| 221 | 221 | ||
| @@ -234,6 +234,7 @@ | |||
| 234 | #define MPS_WORD_SHIFT 5 | 234 | #define MPS_WORD_SHIFT 5 |
| 235 | #define MPS_PF_ALIGN 4 | 235 | #define MPS_PF_ALIGN 4 |
| 236 | 236 | ||
| 237 | |||
| 237 | #elif defined(__FreeBSD__) && defined (__x86_64__) && defined (__GNUC__) | 238 | #elif defined(__FreeBSD__) && defined (__x86_64__) && defined (__GNUC__) |
| 238 | #if defined(CONFIG_PF_STRING) && ! defined(CONFIG_PF_FRI6GC) | 239 | #if defined(CONFIG_PF_STRING) && ! defined(CONFIG_PF_FRI6GC) |
| 239 | #error "specified CONFIG_PF_... inconsistent with detected fri6gc" | 240 | #error "specified CONFIG_PF_... inconsistent with detected fri6gc" |
| @@ -249,6 +250,7 @@ | |||
| 249 | #define MPS_WORD_SHIFT 6 | 250 | #define MPS_WORD_SHIFT 6 |
| 250 | #define MPS_PF_ALIGN 8 | 251 | #define MPS_PF_ALIGN 8 |
| 251 | 252 | ||
| 253 | |||
| 252 | #else | 254 | #else |
| 253 | #error "Unable to detect target platform" | 255 | #error "Unable to detect target platform" |
| 254 | #endif | 256 | #endif |