Mercurial > projects > ldc
comparison gen/complex.h @ 217:0806379a5eca trunk
[svn r233] Added: -oq command line option for writing fully qualified object names.
Added: started support for x86 80bit floating point.
Changed: aggregates passed by value now use the llvm 'byval' parameter attribute, also lays ground work for
using other attributes.
Changed: eliminated a lot more std::vectorS, these showed up pretty much at the top when profiling!
Changed: performed other misc. cleanups.
Changed: halt expression now call the new llvm trap intrinsic instead of an assert(0).
Changed: dstress suite now passes -O0 by default, this only eliminates unreferenced globals, which speeds up
linking quite a bit.
author | lindquist |
---|---|
date | Thu, 05 Jun 2008 06:38:36 +0200 |
parents | 7816aafeea3c |
children | a95056b3c996 |
comparison
equal
deleted
inserted
replaced
216:3d022aa016ae | 217:0806379a5eca |
---|---|
1 #ifndef LLVMDC_GEN_COMPLEX_H | 1 #ifndef LLVMDC_GEN_COMPLEX_H |
2 #define LLVMDC_GEN_COMPLEX_H | 2 #define LLVMDC_GEN_COMPLEX_H |
3 | 3 |
4 const llvm::StructType* DtoComplexType(Type* t); | 4 const llvm::StructType* DtoComplexType(Type* t); |
5 const llvm::Type* DtoComplexBaseType(Type* t); | 5 const LLType* DtoComplexBaseType(Type* t); |
6 | 6 |
7 LLConstant* DtoConstComplex(Type* t, LLConstant* re, LLConstant* im); | 7 LLConstant* DtoConstComplex(Type* t, LLConstant* re, LLConstant* im); |
8 LLConstant* DtoConstComplex(Type* t, long double re, long double im); | 8 LLConstant* DtoConstComplex(Type* t, long double re, long double im); |
9 LLConstant* DtoUndefComplex(Type* _ty); | |
10 | 9 |
11 LLConstant* DtoComplexShuffleMask(unsigned a, unsigned b); | 10 LLConstant* DtoComplexShuffleMask(unsigned a, unsigned b); |
12 | 11 |
13 LLValue* DtoRealPart(DValue* val); | 12 LLValue* DtoRealPart(DValue* val); |
14 LLValue* DtoImagPart(DValue* val); | 13 LLValue* DtoImagPart(DValue* val); |