Removed tango from the repository and instead added a runtime dir with the files needed to patch and build tango from svn.

Reworked the LLVMDC specific pragmas.
This commit is contained in:
Tomas Lindquist Olsen
2008-08-01 00:32:06 +02:00
parent 8f14ece3af
commit 07cfb67178
534 changed files with 1502 additions and 258956 deletions

View File

@@ -758,8 +758,11 @@ DValue* CallExp::toElem(IRState* p)
FuncDeclaration* fndecl = dfnval->func;
// va_start instruction
if (fndecl->llvmInternal == LLVMva_start) {
// TODO
assert(0 && "va_start not yet implemented");
// llvm doesn't need the second param hence the override
Expression* exp = (Expression*)arguments->data[0];
DValue* expv = exp->toElem(p);
LLValue* arg = DtoBitCast(expv->getLVal(), getVoidPtrType());
return new DImValue(type, gIR->ir->CreateCall(GET_INTRINSIC_DECL(vastart), arg, ""));
}
// va_arg instruction
else if (fndecl->llvmInternal == LLVMva_arg) {