Mercurial > projects > ldc
changeset 1086:56e364ba346c
Merging
author | Kelly Wilson <wilsonk cpsc.ucalgary.ca> |
---|---|
date | Tue, 10 Mar 2009 11:08:35 -0600 |
parents | 8cb5b746500c (current diff) 56e56b3b9bb8 (diff) |
children | b1d75bf46ffa |
files | |
diffstat | 1 files changed, 13 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/gen/asm-x86-32.h Tue Mar 10 11:06:38 2009 -0600 +++ b/gen/asm-x86-32.h Tue Mar 10 11:08:35 2009 -0600 @@ -449,7 +449,7 @@ /* Op_Fis_ST */ { mem, 0, 0, FPInt_Types, Clb_ST }, // " /* Op_Fis_P */ { mem, 0, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit /* Op_Fid */ { D|mem, 0, 0, FPInt_Types }, // only 16bit and 32bit, DMD defaults to 16bit - /* Op_Fid_P */ { D|mem, 0, 0, FPInt_Types, Clb_ST }, // push and pop, fild so also 64 bit + /* Op_Fid_P */ { D|mem, 0, 0, FPInt_Types, Clb_ST, Op_FfdRR_P }, // push and pop, fild so also 64 bit /* Op_Ffd */ { D|mfp, 0, 0, FP_Types, 0, Next_Form, Op_FfdR }, // only 16bit and 32bit, DMD defaults to 16bit, reg form doesn't need type /* Op_FfdR */ { D|rfp, 0, 0 }, /* Op_Ffd_P */ { D|mfp, 0, 0, FP_Types, Clb_ST, Next_Form, Op_FfdR_P }, // pop, fld so also 80 bit, " @@ -1377,7 +1377,15 @@ } if ( token->value == TOKcomma ) + { nextToken(); + } + else if ( token->value == TOKint16 || token->value == TOKint32 ) + { + //throw away the 'short' in "jle short label;". Works for 'long' also. + operands[0] = operands[1]; + return; + } else if ( token->value != TOKeof ) { ok = false; @@ -2784,6 +2792,10 @@ ident = Id::__dollar; goto do_dollar; break; + case TOKint16: + case TOKint32: + //This if for the 'short' in "jle short Label;" + return Handled; default: invalidExpression(); return Handled;