* use extended as default real type in calculations only if fputype=x87

git-svn-id: trunk@15750 -
This commit is contained in:
florian 2010-08-08 16:17:43 +00:00
parent dd33fba74c
commit 66571ee4c8
2 changed files with 9 additions and 1 deletions

View File

@ -1115,6 +1115,7 @@ implementation
end;
end;
procedure tcg.a_load_cgparaloc_ref(list : TAsmList;const paraloc : TCGParaLocation;const ref : treference;sizeleft : aint;align : longint);
var
href : treference;

View File

@ -889,7 +889,14 @@ implementation
{ is one a real float, then both need to be floats, this
need to be done before the constant folding so constant
operation on a float and int are also handled }
resultrealdef:=pbestrealtype^;
{$ifdef x86}
{ use extended as default real type only when the x87 fpu is used }
if not(current_settings.fputype=fpu_x87) then
resultrealdef:=s64floattype
else
{$endif x86}
resultrealdef:=pbestrealtype^;
if (right.resultdef.typ=floatdef) or (left.resultdef.typ=floatdef) then
begin
{ when both floattypes are already equal then use that