* do not use fsin and fcos on 286-, since they're 387+

git-svn-id: trunk@24596 -
This commit is contained in:
nickysn 2013-05-25 15:24:53 +00:00
parent c49e927077
commit 2b583bb265

View File

@ -131,12 +131,28 @@ implementation
function tx86inlinenode.first_cos_real : tnode; function tx86inlinenode.first_cos_real : tnode;
begin begin
{$ifdef i8086}
{ FCOS is 387+ }
if current_settings.cputype < cpu_386 then
begin
result := inherited;
exit;
end;
{$endif i8086}
expectloc:=LOC_FPUREGISTER; expectloc:=LOC_FPUREGISTER;
first_cos_real := nil; first_cos_real := nil;
end; end;
function tx86inlinenode.first_sin_real : tnode; function tx86inlinenode.first_sin_real : tnode;
begin begin
{$ifdef i8086}
{ FSIN is 387+ }
if current_settings.cputype < cpu_386 then
begin
result := inherited;
exit;
end;
{$endif i8086}
expectloc:=LOC_FPUREGISTER; expectloc:=LOC_FPUREGISTER;
first_sin_real := nil; first_sin_real := nil;
end; end;
@ -400,12 +416,28 @@ implementation
procedure tx86inlinenode.second_cos_real; procedure tx86inlinenode.second_cos_real;
begin begin
{$ifdef i8086}
{ FCOS is 387+ }
if current_settings.cputype < cpu_386 then
begin
inherited;
exit;
end;
{$endif i8086}
load_fpu_location(left); load_fpu_location(left);
emit_none(A_FCOS,S_NO); emit_none(A_FCOS,S_NO);
end; end;
procedure tx86inlinenode.second_sin_real; procedure tx86inlinenode.second_sin_real;
begin begin
{$ifdef i8086}
{ FSIN is 387+ }
if current_settings.cputype < cpu_386 then
begin
inherited;
exit;
end;
{$endif i8086}
load_fpu_location(left); load_fpu_location(left);
emit_none(A_FSIN,S_NO) emit_none(A_FSIN,S_NO)
end; end;