Mercurial > projects > ldc
comparison gen/tollvm.h @ 1:c53b6e3fe49a trunk
[svn r5] Initial commit. Most things are very rough.
author | lindquist |
---|---|
date | Sat, 01 Sep 2007 21:43:27 +0200 |
parents | |
children | e116aa1488e6 |
comparison
equal
deleted
inserted
replaced
0:a9e71648e74d | 1:c53b6e3fe49a |
---|---|
1 // D -> LLVM helpers | |
2 | |
3 struct StructInitializer; | |
4 | |
5 const llvm::Type* LLVM_DtoType(Type* t); | |
6 | |
7 llvm::Type* LLVM_DtoStructType(Type* t); | |
8 llvm::Value* LLVM_DtoStructZeroInit(TypeStruct* t, llvm::Value* v); | |
9 llvm::Value* LLVM_DtoStructCopy(TypeStruct* t, llvm::Value* dst, llvm::Value* src); | |
10 llvm::Constant* LLVM_DtoStructInitializer(StructInitializer* si); | |
11 | |
12 llvm::FunctionType* LLVM_DtoFunctionType(Type* t, const llvm::Type* thisparam = 0); | |
13 llvm::FunctionType* LLVM_DtoFunctionType(FuncDeclaration* fdecl); | |
14 | |
15 llvm::StructType* LLVM_DtoDelegateType(Type* t); | |
16 llvm::Value* LLVM_DtoNullDelegate(llvm::Value* v); | |
17 llvm::Value* LLVM_DtoDelegateCopy(llvm::Value* dst, llvm::Value* src); | |
18 | |
19 llvm::StructType* LLVM_DtoArrayType(Type* t); | |
20 llvm::ArrayType* LLVM_DtoStaticArrayType(Type* t); | |
21 llvm::Value* LLVM_DtoNullArray(llvm::Value* v); | |
22 llvm::Value* LLVM_DtoArrayAssign(llvm::Value* l, llvm::Value* r); | |
23 void LLVM_DtoSetArray(llvm::Value* arr, llvm::Value* dim, llvm::Value* ptr); | |
24 llvm::Constant* LLVM_DtoArrayInitializer(ArrayInitializer* si); | |
25 void LLVM_DtoArrayCopy(elem* dst, elem* src); | |
26 | |
27 void LLVM_DtoArrayInit(llvm::Value* l, llvm::Value* r); | |
28 | |
29 llvm::GlobalValue::LinkageTypes LLVM_DtoLinkage(PROT prot, uint stc); | |
30 unsigned LLVM_DtoCallingConv(LINK l); | |
31 | |
32 llvm::Value* LLVM_DtoPointedType(llvm::Value* ptr, llvm::Value* val); | |
33 llvm::Value* LLVM_DtoBoolean(llvm::Value* val); | |
34 | |
35 const llvm::Type* LLVM_DtoSize_t(); | |
36 | |
37 void LLVM_DtoMain(); | |
38 | |
39 void LLVM_DtoCallClassDtors(TypeClass* tc, llvm::Value* instance); | |
40 void LLVM_DtoInitClass(TypeClass* tc, llvm::Value* dst); | |
41 | |
42 llvm::Constant* LLVM_DtoInitializer(Type* type, Initializer* init); | |
43 | |
44 #include "enums.h" |