Mercurial > projects > ldc
annotate ir/irtype.h @ 1153:4454126b4345
Added support for single D type register return from __asm.
author | Tomas Lindquist Olsen <tomas.l.olsen gmail.com> |
---|---|
date | Sat, 28 Mar 2009 07:24:53 +0100 |
parents | 340acf1535d0 |
children |
rev | line source |
---|---|
664
eef8ac26c66c
Some missed LLVMDC -> LDC.
Christian Kamm <kamm incasoftware de>
parents:
194
diff
changeset
|
1 #ifndef LDC_IR_IRTYPE_H |
eef8ac26c66c
Some missed LLVMDC -> LDC.
Christian Kamm <kamm incasoftware de>
parents:
194
diff
changeset
|
2 #define LDC_IR_IRTYPE_H |
158
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
3 |
173
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
4 #include <set> |
158
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
5 |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
6 namespace llvm { |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
7 class PATypeHolder; |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
8 } |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
9 |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
10 struct IrType |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
11 { |
173
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
12 static std::set<IrType*> list; |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
13 static void resetAll(); |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
14 |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
15 // overload all of these to make sure |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
16 // the static list is up to date |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
17 IrType(); |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
18 IrType(const IrType& s); |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
19 ~IrType(); |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
20 |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
21 void reset(); |
db9890b3fb64
[svn r189] moving IR data back into DMD frontend nodes
ChristianK
parents:
158
diff
changeset
|
22 |
158
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
23 llvm::PATypeHolder* type; |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
24 }; |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
25 |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
26 #endif |