annotate gen/functions.h @ 983:6e68054cfc20

Fix out-ouf-source build for runtime as well. To build out-of-source, follow these steps: # [[Insert LLVM build instructions here]] mkdir my_build_dir cd my_build_dir svn co http://svn.dsource.org/projects/tango/trunk tango ccmake <PATH_TO_SOURCE> # (Regular ccmake stuff, press 'c' a few times followed by 'g') make make runtime # add `PWD`/bin to PATH closes #213
author Frits van Bommel <fvbommel wxs.nl>
date Thu, 19 Feb 2009 11:01:34 +0100
parents 03d7c4aac654
children 9167d492cbc2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
664
eef8ac26c66c Some missed LLVMDC -> LDC.
Christian Kamm <kamm incasoftware de>
parents: 486
diff changeset
1 #ifndef LDC_GEN_FUNCTIONS_H
eef8ac26c66c Some missed LLVMDC -> LDC.
Christian Kamm <kamm incasoftware de>
parents: 486
diff changeset
2 #define LDC_GEN_FUNCTIONS_H
100
5071469303d4 [svn r104] TONS OF FIXES.
lindquist
parents:
diff changeset
3
486
a34078905d01 Added pragma(llvmdc, "string") for misc per-module compiler configuration, currently "string" can only be "verbose" which forces -vv for module it appears in.
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 234
diff changeset
4 const llvm::FunctionType* DtoFunctionType(Type* t, const LLType* thistype, const LLType* nesttype, bool ismain = false);
100
5071469303d4 [svn r104] TONS OF FIXES.
lindquist
parents:
diff changeset
5 const llvm::FunctionType* DtoFunctionType(FuncDeclaration* fdecl);
5071469303d4 [svn r104] TONS OF FIXES.
lindquist
parents:
diff changeset
6
117
56a21f3e5d3e [svn r121] Finished ModuleInfo implementation.
lindquist
parents: 102
diff changeset
7 const llvm::FunctionType* DtoBaseFunctionType(FuncDeclaration* fdecl);
56a21f3e5d3e [svn r121] Finished ModuleInfo implementation.
lindquist
parents: 102
diff changeset
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
5071469303d4 [svn r104] TONS OF FIXES.
lindquist
parents:
diff changeset
10 void DtoDeclareFunction(FuncDeclaration* fdecl);
920
545f54041d91 Implemented proper support for naked asm using llvm module level asm. Still not 100% complete, but already 1000 times better that what we had before. Don's BignumX86 implementation from Tango (when turned into a standalone unittest) seems to fully work with no changes, and great performance :)
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 664
diff changeset
11 void DtoDefineFunction(FuncDeclaration* fd);
945
03d7c4aac654 SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 920
diff changeset
12
920
545f54041d91 Implemented proper support for naked asm using llvm module level asm. Still not 100% complete, but already 1000 times better that what we had before. Don's BignumX86 implementation from Tango (when turned into a standalone unittest) seems to fully work with no changes, and great performance :)
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 664
diff changeset
13 void DtoDefineNakedFunction(FuncDeclaration* fd);
945
03d7c4aac654 SWITCHED TO LLVM 2.5 !
Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
parents: 920
diff changeset
14 void emitABIReturnAsmStmt(IRAsmBlock* asmblock, Loc loc, FuncDeclaration* fdecl);
100
5071469303d4 [svn r104] TONS OF FIXES.
lindquist
parents:
diff changeset
15
131
5825d48b27d1 [svn r135] * Merged DMD 1.025 *
lindquist
parents: 117
diff changeset
16 DValue* DtoArgument(Argument* fnarg, Expression* argexp);
213
7816aafeea3c [svn r229] Updated the object.d implementation to the latest Tango.
lindquist
parents: 131
diff changeset
17 void DtoVariadicArgument(Expression* argexp, LLValue* dst);
131
5825d48b27d1 [svn r135] * Merged DMD 1.025 *
lindquist
parents: 117
diff changeset
18
100
5071469303d4 [svn r104] TONS OF FIXES.
lindquist
parents:
diff changeset
19 #endif