mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-10 19:45:59 +02:00
* fixed ie when "converting" double to double and single to single on softemu
git-svn-id: trunk@2031 -
This commit is contained in:
parent
dbf94f4713
commit
e4a8f008a7
@ -1854,6 +1854,11 @@ implementation
|
|||||||
case tfloatdef(resulttype.def).typ of
|
case tfloatdef(resulttype.def).typ of
|
||||||
s64real:
|
s64real:
|
||||||
result:=ccallnode.createintern('STOD',ccallparanode.create(left,nil));
|
result:=ccallnode.createintern('STOD',ccallparanode.create(left,nil));
|
||||||
|
s32real:
|
||||||
|
begin
|
||||||
|
result:=left;
|
||||||
|
left:=nil;
|
||||||
|
end;
|
||||||
else
|
else
|
||||||
internalerror(2005082704);
|
internalerror(2005082704);
|
||||||
end;
|
end;
|
||||||
@ -1861,6 +1866,11 @@ implementation
|
|||||||
case tfloatdef(resulttype.def).typ of
|
case tfloatdef(resulttype.def).typ of
|
||||||
s32real:
|
s32real:
|
||||||
result:=ccallnode.createintern('DTOS',ccallparanode.create(left,nil));
|
result:=ccallnode.createintern('DTOS',ccallparanode.create(left,nil));
|
||||||
|
s64real:
|
||||||
|
begin
|
||||||
|
result:=left;
|
||||||
|
left:=nil;
|
||||||
|
end;
|
||||||
else
|
else
|
||||||
internalerror(2005082703);
|
internalerror(2005082703);
|
||||||
end;
|
end;
|
||||||
@ -1881,7 +1891,6 @@ implementation
|
|||||||
{$endif cpufpemu}
|
{$endif cpufpemu}
|
||||||
begin
|
begin
|
||||||
first_real_to_real:=nil;
|
first_real_to_real:=nil;
|
||||||
{ comp isn't a floating type }
|
|
||||||
if registersfpu<1 then
|
if registersfpu<1 then
|
||||||
registersfpu:=1;
|
registersfpu:=1;
|
||||||
expectloc:=LOC_FPUREGISTER;
|
expectloc:=LOC_FPUREGISTER;
|
||||||
|
Loading…
Reference in New Issue
Block a user