Mercurial > projects > ddmd
annotate dmd/backend/mTY.d @ 135:af1bebfd96a4 dmd2037
dmd 2.038
author | Eldar Insafutdinov <e.insafutdinov@gmail.com> |
---|---|
date | Mon, 13 Sep 2010 22:19:42 +0100 |
parents | 2cc604139636 |
children |
rev | line source |
---|---|
0 | 1 module dmd.backend.mTY; |
2 | |
3 enum mTY | |
4 { | |
5 /* Linkage type */ | |
6 mTYnear = 0x100, | |
7 mTYfar = 0x200, | |
8 mTYcs = 0x400, // in code segment | |
9 mTYthread = 0x800, | |
10 mTYLINK = 0xF00, // all linkage bits | |
11 | |
12 mTYloadds = 0x1000, | |
13 mTYexport = 0x2000, | |
14 mTYweak = 0x0000, | |
15 mTYimport = 0x4000, | |
16 mTYnaked = 0x8000, | |
17 mTYMOD = 0xF000, // all modifier bits | |
18 | |
19 mTYbasic = 0x3F, /* bit mask for basic types */ | |
20 | |
21 /* Modifiers to basic types */ | |
22 /// #ifdef JHANDLE | |
23 /// mTYarrayhandle = 0x80, | |
24 /// #else | |
25 mTYarrayhandle = 0x0, | |
26 /// #endif | |
27 mTYconst = 0x40, | |
28 mTYvolatile = 0x80, | |
29 mTYrestrict = 0, // BUG: add for C99 | |
30 mTYmutable = 0, // need to add support | |
31 mTYunaligned = 0, // non-zero for PowerPC | |
32 | |
33 mTYimmutable = 0x1000000, // immutable data | |
34 mTYshared = 0x2000000, // shared data | |
35 mTYnothrow = 0x4000000, // nothrow function | |
36 } | |
37 | |
38 import dmd.EnumUtils; | |
39 mixin(BringToCurrentScope!(mTY)); | |
40 | |
14
2cc604139636
Implemented Linux support for ddmd. Some parts are a bit hacky to just "get it working", that said, druntime and phobos compile, and unittests pass.
Robert Clipsham <robert@octarineparrot.com>
parents:
0
diff
changeset
|
41 uint tybasic(ulong ty) { |
0 | 42 return ((ty) & mTY.mTYbasic); |
14
2cc604139636
Implemented Linux support for ddmd. Some parts are a bit hacky to just "get it working", that said, druntime and phobos compile, and unittests pass.
Robert Clipsham <robert@octarineparrot.com>
parents:
0
diff
changeset
|
43 } |