Mercurial > projects > ldc
diff dmd/mtype.h @ 938:a904cc9bc064
Convert struct arg to integer when passing inreg to make sure LLVM doesn't
ignore the attribute!
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Wed, 04 Feb 2009 18:39:33 +0100 |
parents | 7985bb036db4 |
children | 9167d492cbc2 |
line wrap: on
line diff
--- a/dmd/mtype.h Tue Feb 03 21:46:54 2009 +0100 +++ b/dmd/mtype.h Wed Feb 04 18:39:33 2009 +0100 @@ -23,6 +23,7 @@ // llvm #include "../ir/irtype.h" +namespace llvm { class Type; } struct Scope; struct Identifier; @@ -438,7 +439,8 @@ bool retInPtr; bool usesThis; bool usesNest; - bool structInregArg; + // 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