Mercurial > projects > ldc
view gen/functions.h @ 1637:a6a839bcc18a
Change template linkage from weak_odr to linkonce_odr. Much better, fixes #363.
author | Matti Niemenmaa <matti.niemenmaa+hg@iki.fi> |
---|---|
date | Mon, 08 Mar 2010 19:05:12 +0200 |
parents | 207a8a438dea |
children |
line wrap: on
line source
#ifndef LDC_GEN_FUNCTIONS_H #define LDC_GEN_FUNCTIONS_H #include "mars.h" struct FuncDeclaration; struct Type; struct IRAsmBlock; namespace llvm { class Value; } const llvm::FunctionType* DtoFunctionType(Type* t, Type* thistype, Type* nesttype, bool ismain = false); const llvm::FunctionType* DtoFunctionType(FuncDeclaration* fdecl); const llvm::FunctionType* DtoBaseFunctionType(FuncDeclaration* fdecl); void DtoResolveFunction(FuncDeclaration* fdecl); void DtoDeclareFunction(FuncDeclaration* fdecl); void DtoDefineFunction(FuncDeclaration* fd); void DtoDefineNakedFunction(FuncDeclaration* fd); void emitABIReturnAsmStmt(IRAsmBlock* asmblock, Loc loc, FuncDeclaration* fdecl); DValue* DtoArgument(Parameter* fnarg, Expression* argexp); void DtoVariadicArgument(Expression* argexp, llvm::Value* dst); #endif