diff dmd2/mtype.h @ 953:5fa3e0ea06e9

Merged a bunch recent dmd v1 frontend changes into the dmd v2 tree.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Fri, 13 Feb 2009 22:20:30 +0100
parents 356e65836fb5
children 964af20461a9
line wrap: on
line diff
--- a/dmd2/mtype.h	Thu Feb 12 18:39:14 2009 +0100
+++ b/dmd2/mtype.h	Fri Feb 13 22:20:30 2009 +0100
@@ -23,6 +23,7 @@
 
 // llvm
 #include "../ir/irtype.h"
+namespace llvm { class Type; }
 
 struct Scope;
 struct Identifier;
@@ -504,11 +505,14 @@
     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;
-    size_t reverseIndex;
 };
 
 struct TypeDelegate : TypeNext