Mercurial > projects > ldc
annotate gen/functions.h @ 454:283d113d4753
Added generation of the llvm 'sret' parameter attribute where applicable.
Fixed some wrong argument handling code when setting parameter attributes.
Updated the tango unittest script in the tango patch, does not work yet, all modules don't compile...
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Sat, 02 Aug 2008 02:54:57 +0200 |
parents | 9760f54af0b7 |
children | a34078905d01 |
rev | line source |
---|---|
100 | 1 #ifndef LLVMDC_GEN_FUNCTIONS_H |
2 #define LLVMDC_GEN_FUNCTIONS_H | |
3 | |
213
7816aafeea3c
[svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents:
131
diff
changeset
|
4 const llvm::FunctionType* DtoFunctionType(Type* t, const LLType* thistype, bool ismain = false); |
100 | 5 const llvm::FunctionType* DtoFunctionType(FuncDeclaration* fdecl); |
6 | |
117 | 7 const llvm::FunctionType* DtoBaseFunctionType(FuncDeclaration* fdecl); |
8 | |
102
027b8d8b71ec
[svn r106] Turns out the last commit wasn't enough, now the D->LLVM process is even more split up.
lindquist
parents:
100
diff
changeset
|
9 void DtoResolveFunction(FuncDeclaration* fdecl); |
100 | 10 void DtoDeclareFunction(FuncDeclaration* fdecl); |
11 void DtoDefineFunc(FuncDeclaration* fd); | |
12 | |
131 | 13 DValue* DtoArgument(Argument* fnarg, Expression* argexp); |
213
7816aafeea3c
[svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents:
131
diff
changeset
|
14 void DtoVariadicArgument(Expression* argexp, LLValue* dst); |
131 | 15 |
100 | 16 #endif |