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);