+ fpu emulation support (generic and untested)

This commit is contained in:
carl 2002-08-14 19:14:39 +00:00
parent 3ab3c91e0a
commit c403293c6a

View File

@ -111,11 +111,21 @@ var
vmtsymtable : tsymtable;
begin
{ Normal types }
addtype('Single',s32floattype);
addtype('Double',s64floattype);
{ extended size is the best real type for the target }
addtype('Extended',pbestrealtype^);
addtype('Real',s64floattype);
if (cs_fp_emulation in aktmoduleswitches) then
begin
addtype('Single',s32floattype);
{ extended size is the best real type for the target }
addtype('Real',s32floattype);
pbestrealtype:=@s32floattype;
end
else
begin
addtype('Single',s32floattype);
addtype('Double',s64floattype);
{ extended size is the best real type for the target }
addtype('Extended',pbestrealtype^);
addtype('Real',s64floattype);
end;
{$ifdef x86}
adddef('Comp',tfloatdef.create(s64comp));
{$endif x86}
@ -286,22 +296,15 @@ begin
ordpointertype:=u32bittype;
s32floattype.setdef(tfloatdef.create(s32real));
s64floattype.setdef(tfloatdef.create(s64real));
s80floattype.setdef(tfloatdef.create(s80real));
{$endif sparc}
s64currencytype.setdef(tfloatdef.create(s64currency));
{$ifdef m68k}
ordpointertype:=u32bittype;
s32floattype.setdef(tfloatdef.create(s32real));
if (cs_fp_emulation in aktmoduleswitches) then
begin
s64floattype.setdef(tfloatdef.create(s32real));
s80floattype.setdef(tfloatdef.create(s32real));
end
else
begin
s64floattype.setdef(tfloatdef.create(s64real));
s80floattype.setdef(tfloatdef.create(s80real));
end;
s64floattype.setdef(tfloatdef.create(s64real));
s80floattype.setdef(tfloatdef.create(s80real));
{$endif}
s64currencytype.setdef(tfloatdef.create(s64currency));
{ some other definitions }
voidpointertype.setdef(tpointerdef.create(voidtype));
charpointertype.setdef(tpointerdef.create(cchartype));
@ -315,7 +318,10 @@ end;
end.
{
$Log$
Revision 1.34 2002-08-13 18:01:52 carl
Revision 1.35 2002-08-14 19:14:39 carl
+ fpu emulation support (generic and untested)
Revision 1.34 2002/08/13 18:01:52 carl
* rename swatoperands to swapoperands
+ m68k first compilable version (still needs a lot of testing):
assembler generator, system information , inline