fpc/tests/test/tfpuover.pp
2007-03-04 19:16:20 +00:00

28 lines
759 B
ObjectPascal

{$define FAIL}
var
x1,y1,z : double;
function x : double;
begin
x :=((x1+y1)*(x1-y1))*((x1+y1)*(x1-y1));
end;
function y : double;
begin
y :=((x1*y1)/(x1+y1)){$ifdef FAIL}*((x1+y1)*(x1-y1)){$endif};
end;
begin
x1:=2;
y1:=3;
{ Explanation a addnote needs the same number of fpu regs
that the max fpu need of left and right node, unless
these two numbers are equal:
this is the reason of the symmetric form of this test code PM }
z:=((((x+y)*(x-y))+((x+y)*(x-y)))+(((x+y)*(x-y))+((x+y)*(x-y)))+
(((x+y)*(x-y))+((x+y)*(x-y)))+(((x+y)*(x-y))+((x+y)*(x-y))))+
((((x+y)*(x-y))+((x+y)*(x-y)))+(((x+y)*(x-y))+((x+y)*(x-y)))+
(((x+y)*(x-y))+((x+y)*(x-y)))+(((x+y)*(x-y))+((x+y)*(x-y))));
Writeln('z = ',z);
end.