* 16/8-bit alu fix in tcgunaryminusnode.emit_float_sign_change

git-svn-id: trunk@27672 -
This commit is contained in:
nickysn 2014-04-26 18:58:22 +00:00
parent 33602db802
commit 63f0731913

View File

@ -166,7 +166,13 @@ implementation
internalerror(200406021);
end;
{ flip sign-bit (bit 31/63) of single/double }
cg.a_op_const_ref(current_asmdata.CurrAsmList,OP_XOR,OS_32,aint($80000000),href2);
cg.a_op_const_ref(current_asmdata.CurrAsmList,OP_XOR,OS_32,
{$ifdef cpu64bitalu}
aint($80000000),
{$else cpu64bitalu}
longint($80000000),
{$endif cpu64bitalu}
href2);
cg.a_loadfpu_ref_reg(current_asmdata.CurrAsmList,_size,_size,href,r);
tg.ungetiftemp(current_asmdata.CurrAsmList,href);
end;