Mercurial > projects > ldc
annotate ir/irtype.h @ 275:665b81613475 trunk
[svn r296] Removed: the 'suite' dir, it never took off!
Fixed: foreach statement, key-type checks were buggy.
Fixed: setting LLVMDC versions on the command line is now an error.
Fixed: array compare runtime had incorrect param attrs on call.
Fixed: index expressions on dynamic array slices w/o storage was broken.
Fixed: scope classes had incorrect finalization in some cases.
Fixed: when outputting !ClassInfoS !OffsetTypeInfoS, static class members were trying to be included, crashing the compiler.
Fixed: calling LLVMDC with -inline but not any -O option caused assertion failure.
Changed: the runtime now uses a single interface to "get" to !TypeInfoS, part of eliminating duplicate !TypeInfo codegen.
author | lindquist |
---|---|
date | Thu, 19 Jun 2008 17:30:32 +0200 |
parents | 8ee2c46ff938 |
children | eef8ac26c66c |
rev | line source |
---|---|
158
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
1 #ifndef LLVMDC_IR_IRTYPE_H |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
2 #define LLVMDC_IR_IRTYPE_H |
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 llvm::PATypeHolder* vtblType; |
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 |
287540c5f05e
[svn r174] added file missing from previous commit [173]
ChristianK
parents:
diff
changeset
|
27 #endif |