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