mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-11-02 08:29:32 +01:00
* float to float and int to float fixed
This commit is contained in:
parent
2d97d42422
commit
6802705043
@ -114,9 +114,18 @@ implementation
|
||||
{ Load memory in fpu register }
|
||||
cg.a_loadfpu_ref_reg(exprasmlist,location.size,left.location.reference,location.register);
|
||||
tg.ungetiftemp(exprasmlist,left.location.reference);
|
||||
{$warning TODO Handle also double}
|
||||
|
||||
{ Convert value in fpu register from integer to float }
|
||||
exprasmlist.concat(taicpu.op_reg_reg(A_FiTOs,location.register,location.register));
|
||||
case tfloatdef(resulttype.def).typ of
|
||||
s32real:
|
||||
exprasmlist.concat(taicpu.op_reg_reg(A_FiTOs,location.register,location.register));
|
||||
s64real:
|
||||
exprasmlist.concat(taicpu.op_reg_reg(A_FiTOd,location.register,location.register));
|
||||
s128real:
|
||||
exprasmlist.concat(taicpu.op_reg_reg(A_FiTOq,location.register,location.register));
|
||||
else
|
||||
internalerror(200408011);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
@ -142,7 +151,7 @@ implementation
|
||||
internalerror(200401121);
|
||||
location_release(exprasmlist,left.location);
|
||||
location.register:=cg.getfpuregister(exprasmlist,location.size);
|
||||
exprasmlist.concat(taicpu.op_reg_reg(A_FsTOd,left.location.register,location.register));
|
||||
exprasmlist.concat(taicpu.op_reg_reg(op,left.location.register,location.register));
|
||||
end;
|
||||
|
||||
|
||||
@ -226,7 +235,10 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.26 2004-06-20 08:55:32 florian
|
||||
Revision 1.27 2004-08-01 19:01:10 florian
|
||||
* float to float and int to float fixed
|
||||
|
||||
Revision 1.26 2004/06/20 08:55:32 florian
|
||||
* logs truncated
|
||||
|
||||
Revision 1.25 2004/06/16 20:07:10 florian
|
||||
|
||||
Loading…
Reference in New Issue
Block a user