* fixed code generation for sqrt and sqr in softfloat mode

git-svn-id: trunk@1038 -
This commit is contained in:
florian 2005-09-02 12:31:50 +00:00
parent 9bccd2a725
commit a8f2d702a7

View File

@ -86,10 +86,7 @@ implementation
function tarminlinenode.first_abs_real : tnode;
begin
if cs_fp_emulation in aktmoduleswitches then
begin
// if target_info.system in system_wince then
result:=inherited first_abs_real;
end
result:=inherited first_abs_real
else
begin
expectloc:=LOC_FPUREGISTER;
@ -102,19 +99,29 @@ implementation
function tarminlinenode.first_sqr_real : tnode;
begin
expectloc:=LOC_FPUREGISTER;
registersint:=left.registersint;
registersfpu:=max(left.registersfpu,1);
first_sqr_real:=nil;
if cs_fp_emulation in aktmoduleswitches then
result:=inherited first_sqr_real
else
begin
expectloc:=LOC_FPUREGISTER;
registersint:=left.registersint;
registersfpu:=max(left.registersfpu,1);
first_sqr_real:=nil;
end;
end;
function tarminlinenode.first_sqrt_real : tnode;
begin
expectloc:=LOC_FPUREGISTER;
registersint:=left.registersint;
registersfpu:=max(left.registersfpu,1);
first_sqrt_real := nil;
if cs_fp_emulation in aktmoduleswitches then
result:=inherited first_sqrt_real
else
begin
expectloc:=LOC_FPUREGISTER;
registersint:=left.registersint;
registersfpu:=max(left.registersfpu,1);
first_sqrt_real := nil;
end;
end;