annotate ir/irtype.h @ 203:e881c9b1c738 trunk

[svn r219] Fixed: the tango/lib/gc/basic garbage collector now compiles and links into an executable (change in tango/lib/llvmdc-posix.mak), closes #5 . Changed: removed the crappy realloc based dynamic memory runtime and started moving over to DMD style runtime support, part of moving to real GC. Fixed: dynamic arrays now use GC runtime for allocating memory. Fixed: new expression now use GC for allocating memory. Changed: revamped the dynamic array support routines related to dynamic memory. Fixed: assertions no longer create exsessive allocas. Changed: misc. minor cleanups.
author lindquist
date Tue, 13 May 2008 14:42:09 +0200
parents 8ee2c46ff938
children eef8ac26c66c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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