annotate gen/llvm.h @ 946:1714836f2c0b

Mostly rewrite debug info generation in terms of llvm/Analysis/DebugInfo.h. Add getCompilationModule to Dsymbol and fix template compile unit decision code. Runtime compiles with -g again.
author Christian Kamm <kamm incasoftware de>
date Sun, 08 Feb 2009 16:50:22 +0100
parents 5812d6fac0f0
children 8c73ff5f69e0
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"
632
df196c8dea26 Updated to latest LLVM trunk, function notes have been removed and merged with parameter attributes, which have been renamed to just attributes. Nothing seems to have broke!
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 629
diff changeset
13 #include "llvm/Attributes.h"
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
14
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
15 #include "llvm/Target/TargetData.h"
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
16
946
1714836f2c0b Mostly rewrite debug info generation in terms of llvm/Analysis/DebugInfo.h.
Christian Kamm <kamm incasoftware de>
parents: 653
diff changeset
17 #include "llvm/Analysis/DebugInfo.h"
1714836f2c0b Mostly rewrite debug info generation in terms of llvm/Analysis/DebugInfo.h.
Christian Kamm <kamm incasoftware de>
parents: 653
diff changeset
18
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
19 #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
20 using llvm::IRBuilder;
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
21
629
607b6b5819a7 Fixed issue with IsExpression and potential type mismatch for classes.
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 445
diff changeset
22 // for WriteTypeSymbolic
607b6b5819a7 Fixed issue with IsExpression and potential type mismatch for classes.
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 445
diff changeset
23 #include "llvm/Assembly/Writer.h"
607b6b5819a7 Fixed issue with IsExpression and potential type mismatch for classes.
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 445
diff changeset
24
213
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
25 #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
26
244
a95056b3c996 [svn r261] Fixed debug info for integer and floating local variables, can now be inspected in GDB.
lindquist
parents: 213
diff changeset
27 // shortcuts for the common llvm types
a95056b3c996 [svn r261] Fixed debug info for integer and floating local variables, can now be inspected in GDB.
lindquist
parents: 213
diff changeset
28
309
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
29 #define LLType llvm::Type
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
30 #define LLFunctionType llvm::FunctionType
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
31 #define LLPointerType llvm::PointerType
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
32 #define LLStructType llvm::StructType
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
33 #define LLArrayType llvm::ArrayType
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
34 #define LLIntegerType llvm::IntegerType
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
35 #define LLOpaqueType llvm::OpaqueType
244
a95056b3c996 [svn r261] Fixed debug info for integer and floating local variables, can now be inspected in GDB.
lindquist
parents: 213
diff changeset
36
309
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
37 #define LLValue llvm::Value
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
38 #define LLGlobalValue llvm::GlobalValue
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
39 #define LLGlobalVariable llvm::GlobalVariable
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
40 #define LLFunction llvm::Function
244
a95056b3c996 [svn r261] Fixed debug info for integer and floating local variables, can now be inspected in GDB.
lindquist
parents: 213
diff changeset
41
309
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
42 #define LLConstant llvm::Constant
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
43 #define LLConstantStruct llvm::ConstantStruct
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
44 #define LLConstantArray llvm::ConstantArray
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
45 #define LLConstantInt llvm::ConstantInt
445
cc40db549aea Changed the handling of variadic intrinsics a bit.
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 309
diff changeset
46 #define LLConstantFP llvm::ConstantFP
244
a95056b3c996 [svn r261] Fixed debug info for integer and floating local variables, can now be inspected in GDB.
lindquist
parents: 213
diff changeset
47
309
d59c363fccad [svn r330] Implemented synchronized statements.
lindquist
parents: 244
diff changeset
48 #define LLPATypeHolder llvm::PATypeHolder
213
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
49
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
50 #define LLSmallVector llvm::SmallVector
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 205
diff changeset
51
653
5812d6fac0f0 Fix x86_fp80 constants.
Christian Kamm <kamm incasoftware de>
parents: 632
diff changeset
52 using llvm::APFloat;
5812d6fac0f0 Fix x86_fp80 constants.
Christian Kamm <kamm incasoftware de>
parents: 632
diff changeset
53 using llvm::APInt;
445
cc40db549aea Changed the handling of variadic intrinsics a bit.
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 309
diff changeset
54
40
8b0e809563df [svn r44] Lots of bug fixes.
lindquist
parents:
diff changeset
55 #endif // GEN_LLVM_H