annotate gen/llvm.h @ 213:7816aafeea3c trunk

[svn r229] Updated the object.d implementation to the latest Tango. Fixed a bunch of the built-in typeinfos for arrays, they did not inherit TypeInfo_Array. Applied patch to tango/text/convert/Layout.d by fvbommel, closes #47 . Cleaned up some type code. Replaced uses of llvm::Type with LLType (a typedef), same for Value and Constant. Fixed a few cases where typeinfo for user structs could be emitted multiple times, seems to still be some cases of this :/
author lindquist
date Fri, 30 May 2008 19:32:04 +0200
parents 9d44ec83acd1
children a95056b3c996
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
1 #ifndef GEN_LLVM_H
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
2 #define GEN_LLVM_H
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
3
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
4 #include "llvm/Type.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
5 #include "llvm/DerivedTypes.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
6 #include "llvm/Constants.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
7 #include "llvm/IntrinsicInst.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
8 #include "llvm/CallingConv.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
9 #include "llvm/GlobalVariable.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
10 #include "llvm/Function.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
11 #include "llvm/Module.h"
43
eb7bf7b7972e [svn r47] fixed a problem with gdc 4.1
lindquist
parents: 40
diff changeset
12 #include "llvm/Value.h"
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
13
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
14 #include "llvm/Target/TargetData.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
15
205
9d44ec83acd1 [svn r221] Update: Switched to the 2.3 LLVM svn branch, http://llvm.org/svn/llvm-project/llvm/branches/release_23 .
lindquist
parents: 43
diff changeset
16 #include "llvm/Support/IRBuilder.h"
9d44ec83acd1 [svn r221] Update: Switched to the 2.3 LLVM svn branch, http://llvm.org/svn/llvm-project/llvm/branches/release_23 .
lindquist
parents: 43
diff changeset
17 using llvm::IRBuilder;
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
18
213
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
19 #define GET_INTRINSIC_DECL(_X) (llvm::Intrinsic::getDeclaration(gIR->module, llvm::Intrinsic:: _X ))
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
20
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
21 // shortcuts for the _very_ common llvm types
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
22 typedef llvm::Type LLType;
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
23 typedef llvm::Value LLValue;
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
24 typedef llvm::Constant LLConstant;
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
25
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
26 #define LLSmallVector llvm::SmallVector
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
27
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
28 #endif // GEN_LLVM_H