|
@@ -65,6 +65,7 @@ implementation
|
|
aasmtai,aasmdata,aasmcpu,
|
|
aasmtai,aasmdata,aasmcpu,
|
|
symconst,symdef,
|
|
symconst,symdef,
|
|
defutil,
|
|
defutil,
|
|
|
|
+ procinfo,
|
|
cgbase,pass_2,
|
|
cgbase,pass_2,
|
|
cpuinfo,ncgutil,
|
|
cpuinfo,ncgutil,
|
|
hlcgobj,cgutils,cgobj,rgobj,tgobj;
|
|
hlcgobj,cgutils,cgobj,rgobj,tgobj;
|
|
@@ -80,6 +81,8 @@ implementation
|
|
begin
|
|
begin
|
|
expectloc:=LOC_FPUREGISTER;
|
|
expectloc:=LOC_FPUREGISTER;
|
|
first_sqrt_real := nil;
|
|
first_sqrt_real := nil;
|
|
|
|
+ if needs_check_for_fpu_exceptions then
|
|
|
|
+ Include(current_procinfo.flags,pi_do_call);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
result:=inherited first_sqrt_real;
|
|
result:=inherited first_sqrt_real;
|
|
@@ -104,6 +107,8 @@ implementation
|
|
begin
|
|
begin
|
|
expectloc:=LOC_FPUREGISTER;
|
|
expectloc:=LOC_FPUREGISTER;
|
|
first_sqr_real := nil;
|
|
first_sqr_real := nil;
|
|
|
|
+ if needs_check_for_fpu_exceptions then
|
|
|
|
+ Include(current_procinfo.flags,pi_do_call);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
result:=inherited first_sqr_real;
|
|
result:=inherited first_sqr_real;
|
|
@@ -116,6 +121,8 @@ implementation
|
|
begin
|
|
begin
|
|
expectloc:=LOC_FPUREGISTER;
|
|
expectloc:=LOC_FPUREGISTER;
|
|
first_round_real := nil;
|
|
first_round_real := nil;
|
|
|
|
+ if needs_check_for_fpu_exceptions then
|
|
|
|
+ Include(current_procinfo.flags,pi_do_call);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
result:=inherited first_round_real;
|
|
result:=inherited first_round_real;
|
|
@@ -128,6 +135,8 @@ implementation
|
|
begin
|
|
begin
|
|
expectloc:=LOC_FPUREGISTER;
|
|
expectloc:=LOC_FPUREGISTER;
|
|
first_trunc_real := nil;
|
|
first_trunc_real := nil;
|
|
|
|
+ if needs_check_for_fpu_exceptions then
|
|
|
|
+ Include(current_procinfo.flags,pi_do_call);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
result:=inherited first_trunc_real;
|
|
result:=inherited first_trunc_real;
|
|
@@ -136,6 +145,8 @@ implementation
|
|
|
|
|
|
function trvinlinenode.first_fma: tnode;
|
|
function trvinlinenode.first_fma: tnode;
|
|
begin
|
|
begin
|
|
|
|
+ if needs_check_for_fpu_exceptions then
|
|
|
|
+ Include(current_procinfo.flags,pi_do_call);
|
|
Result:=nil;
|
|
Result:=nil;
|
|
end;
|
|
end;
|
|
|
|
|