Mercurial > projects > ldc
comparison gen/tollvm.h @ 104:4d1e9eb001e0 trunk
[svn r108] Now basic suppport for complex types. =,+,-,*,/ are supported.
author | lindquist |
---|---|
date | Mon, 19 Nov 2007 02:58:58 +0100 |
parents | 027b8d8b71ec |
children | 5b5194b25f33 |
comparison
equal
deleted
inserted
replaced
103:855adfdb8d38 | 104:4d1e9eb001e0 |
---|---|
19 | 19 |
20 llvm::Value* DtoPointedType(llvm::Value* ptr, llvm::Value* val); | 20 llvm::Value* DtoPointedType(llvm::Value* ptr, llvm::Value* val); |
21 llvm::Value* DtoBoolean(llvm::Value* val); | 21 llvm::Value* DtoBoolean(llvm::Value* val); |
22 | 22 |
23 const llvm::Type* DtoSize_t(); | 23 const llvm::Type* DtoSize_t(); |
24 | |
25 const llvm::StructType* DtoComplexType(const llvm::Type* base); | |
26 | 24 |
27 llvm::Constant* DtoConstInitializer(Type* type, Initializer* init); | 25 llvm::Constant* DtoConstInitializer(Type* type, Initializer* init); |
28 llvm::Constant* DtoConstFieldInitializer(Type* type, Initializer* init); | 26 llvm::Constant* DtoConstFieldInitializer(Type* type, Initializer* init); |
29 DValue* DtoInitializer(Initializer* init); | 27 DValue* DtoInitializer(Initializer* init); |
30 | 28 |
48 llvm::Value* DtoNestedVariable(VarDeclaration* vd); | 46 llvm::Value* DtoNestedVariable(VarDeclaration* vd); |
49 | 47 |
50 llvm::ConstantInt* DtoConstSize_t(size_t); | 48 llvm::ConstantInt* DtoConstSize_t(size_t); |
51 llvm::ConstantInt* DtoConstUint(unsigned i); | 49 llvm::ConstantInt* DtoConstUint(unsigned i); |
52 llvm::ConstantInt* DtoConstInt(int i); | 50 llvm::ConstantInt* DtoConstInt(int i); |
51 llvm::ConstantFP* DtoConstFP(Type* t, long double value); | |
52 | |
53 llvm::Constant* DtoConstString(const char*); | 53 llvm::Constant* DtoConstString(const char*); |
54 llvm::Constant* DtoConstStringPtr(const char* str, const char* section = 0); | 54 llvm::Constant* DtoConstStringPtr(const char* str, const char* section = 0); |
55 llvm::Constant* DtoConstBool(bool); | 55 llvm::Constant* DtoConstBool(bool); |
56 llvm::Constant* DtoConstNullPtr(const llvm::Type* t); | 56 llvm::Constant* DtoConstNullPtr(const llvm::Type* t); |
57 | 57 |
96 | 96 |
97 // casts | 97 // casts |
98 DValue* DtoCastInt(DValue* val, Type* to); | 98 DValue* DtoCastInt(DValue* val, Type* to); |
99 DValue* DtoCastPtr(DValue* val, Type* to); | 99 DValue* DtoCastPtr(DValue* val, Type* to); |
100 DValue* DtoCastFloat(DValue* val, Type* to); | 100 DValue* DtoCastFloat(DValue* val, Type* to); |
101 DValue* DtoCastComplex(DValue* val, Type* to); | |
101 DValue* DtoCastClass(DValue* val, Type* to); | 102 DValue* DtoCastClass(DValue* val, Type* to); |
102 DValue* DtoCast(DValue* val, Type* to); | 103 DValue* DtoCast(DValue* val, Type* to); |
103 | 104 |
104 // binary operations | 105 // binary operations |
105 DValue* DtoBinAdd(DValue* lhs, DValue* rhs); | 106 DValue* DtoBinAdd(DValue* lhs, DValue* rhs); |