changeset 1028:964af20461a9

Merged ABI changes into D2 frontend.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Tue, 03 Mar 2009 14:10:37 +0100
parents c061e0725d89
children 4d366a75d95f
files dmd2/mtype.c dmd2/mtype.h
diffstat 2 files changed, 5 insertions(+), 31 deletions(-) [+]
line wrap: on
line diff
--- 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;
 }
 
--- 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;