# HG changeset patch # User Tomas Lindquist Olsen # Date 1236085837 -3600 # Node ID 964af20461a969b7b142d6d4f1e1d12d723573eb # Parent c061e0725d89c28fb9084ab083de8d96cb46b971 Merged ABI changes into D2 frontend. diff -r c061e0725d89 -r 964af20461a9 dmd2/mtype.c --- a/dmd2/mtype.c Tue Mar 03 09:51:15 2009 +0100 +++ b/dmd2/mtype.c Tue Mar 03 14:10:37 2009 +0100 @@ -3045,14 +3045,9 @@ this->isnothrow = false; this->ispure = false; this->isref = false; - this->retInPtr = false; - this->usesThis = false; - this->usesNest = false; - this->structInregArg = NULL; - this->retAttrs = 0; - this->thisAttrs = 0; - this->reverseParams = false; - this->firstRealArg = 0; + + // LDC + this->fty = NULL; } Type *TypeFunction::syntaxCopy() @@ -3064,13 +3059,6 @@ t->isnothrow = isnothrow; t->ispure = ispure; t->isref = isref; - t->retInPtr = retInPtr; - t->usesThis = usesThis; - t->usesNest = usesNest; - t->retAttrs = retAttrs; - t->thisAttrs = thisAttrs; - t->reverseParams = reverseParams; - t->firstRealArg = firstRealArg; return t; } @@ -6119,7 +6107,6 @@ this->ident = ident; this->storageClass = storageClass; this->defaultArg = defaultArg; - this->llvmAttrs = 0; } Argument *Argument::syntaxCopy() @@ -6128,7 +6115,6 @@ type ? type->syntaxCopy() : NULL, ident, defaultArg ? defaultArg->syntaxCopy() : NULL); - a->llvmAttrs = llvmAttrs; return a; } diff -r c061e0725d89 -r 964af20461a9 dmd2/mtype.h --- a/dmd2/mtype.h Tue Mar 03 09:51:15 2009 +0100 +++ b/dmd2/mtype.h Tue Mar 03 14:10:37 2009 +0100 @@ -24,6 +24,7 @@ // llvm #include "../ir/irtype.h" namespace llvm { class Type; } +struct IrFuncTy; struct Scope; struct Identifier; @@ -502,17 +503,7 @@ unsigned totym(); // LDC - bool retInPtr; - bool usesThis; - bool usesNest; - // when the last arg is a struct and passed in EAX, this holds its real type - const llvm::Type* structInregArg; - unsigned retAttrs; - unsigned thisAttrs; // also used for nest - // parameter index in the llvm function that contains the first not-implicit arg - size_t firstRealArg; - - bool reverseParams; + IrFuncTy* fty; }; struct TypeDelegate : TypeNext @@ -802,9 +793,6 @@ static int isTPL(Arguments *arguments); static size_t dim(Arguments *arguments); static Argument *getNth(Arguments *arguments, size_t nth, size_t *pn = NULL); - - // LDC - unsigned llvmAttrs; }; extern int PTRSIZE;