aboutsummaryrefslogtreecommitdiffstats
path: root/mps/code/mpstd.h
diff options
context:
space:
mode:
authorRichard Kistruck2008-10-20 17:31:57 +0100
committerRichard Kistruck2008-10-20 17:31:57 +0100
commitf8d35dd8eca621cc1d9bacb54ca720c0496e44f3 (patch)
tree6bd18a97428d1613f21e32fb30cf46a5dcae01e5 /mps/code/mpstd.h
parentfc9c9ef7b337ad45bfe09a5790a6497c80084e58 (diff)
downloademacs-f8d35dd8eca621cc1d9bacb54ca720c0496e44f3.tar.gz
emacs-f8d35dd8eca621cc1d9bacb54ca720c0496e44f3.zip
Mps br/vc9: new w3i3m9 clone-platform:
- w3i3m9.nmk: use commpre9.nmk (not commpre.nmk), for VC9 compiler and linker options; - w3i3m[v9].nmk: declare CONFIG_PF_... - mpstd.h: if CONFIG_PF_... is declared, check that the correct compiler really is in use. Copied from Perforce Change: 166505 ServerID: perforce.ravenbrook.com
Diffstat (limited to 'mps/code/mpstd.h')
-rw-r--r--mps/code/mpstd.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/mps/code/mpstd.h b/mps/code/mpstd.h
index 152bf819206..005c8b69d56 100644
--- a/mps/code/mpstd.h
+++ b/mps/code/mpstd.h
@@ -81,6 +81,26 @@
81#define MPS_WORD_SHIFT 5 81#define MPS_WORD_SHIFT 5
82#define MPS_PF_ALIGN 4 82#define MPS_PF_ALIGN 4
83 83
84/* w3i3m9 clone-platform, differs from w3i3mv only in MPS_PF_STRING
85 * and compiler options.
86 */
87
88#elif defined(CONFIG_PF_W3I3M9) \
89 || defined(_MSC_VER) && (_MSC_VER >= 1500) && defined(_WIN32) && defined(_M_IX86)
90#if defined(CONFIG_PF_W3I3M9) \
91 && ! ( defined(_MSC_VER) && (_MSC_VER >= 1500) && defined(_WIN32) && defined(_M_IX86) )
92#error "CONFIG_PF_W3I3M9 inconsistent with target platform detected"
93#endif
94#define MPS_PF_W3I3MV
95#define MPS_PF_STRING "w3i3m9"
96#define MPS_OS_W3
97#define MPS_ARCH_I3
98#define MPS_BUILD_MV
99#define MPS_T_WORD unsigned long
100#define MPS_WORD_WIDTH 32
101#define MPS_WORD_SHIFT 5
102#define MPS_PF_ALIGN 8
103
84/* Visual C++ 2.0, Books Online, C/C++ Book, Preprocessor Reference, 104/* Visual C++ 2.0, Books Online, C/C++ Book, Preprocessor Reference,
85 * Chapter 1: The Preprocessor, Macros, Predefined Macros. 105 * Chapter 1: The Preprocessor, Macros, Predefined Macros.
86 * Alignment of 4 would work, but the MS library uses 8 bytes for 106 * Alignment of 4 would work, but the MS library uses 8 bytes for
@@ -90,6 +110,11 @@
90 110
91#elif defined(CONFIG_PF_W3I3MV) \ 111#elif defined(CONFIG_PF_W3I3MV) \
92 || defined(_MSC_VER) && defined(_WIN32) && defined(_M_IX86) 112 || defined(_MSC_VER) && defined(_WIN32) && defined(_M_IX86)
113#if defined(CONFIG_PF_W3I3MV) \
114 && ! ( defined(_MSC_VER) && (_MSC_VER < 1500) && defined(_WIN32) && defined(_M_IX86) )
115#error "CONFIG_PF_W3I3MV inconsistent with target platform detected"
116/* (See w3i3m9 clone-platform, above) */
117#endif
93#define MPS_PF_W3I3MV 118#define MPS_PF_W3I3MV
94#define MPS_PF_STRING "w3i3mv" 119#define MPS_PF_STRING "w3i3mv"
95#define MPS_OS_W3 120#define MPS_OS_W3