[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#210613: libc6.1: generic atan gives wrong results for some operands on alpha



At Fri, 12 Sep 2003 15:27:02 +0200,
Vincent Lefevre wrote:
> On an alpha machine, I get:
> 
> $ ./testatan 0.062510113344606447
>       x = 0.062510113344606447    (mant: 4504328370650513/2^53, exp: -3)
> atan(x) = 0.0081052752446468968   (mant: 4672373065155465/2^53, exp: -6)
> 
> $ ./testatan 1.016527294692847
>       x = 1.016527294692847       (mant: 4578031945590644/2^53, exp: 1)
> atan(x) = 0.081995669833819521    (mant: 5908410689753341/2^53, exp: -3)
> 
> $ ./testatan 1.9966212994203429
>       x = 1.9966212994203429      (mant: 8991982940069452/2^53, exp: 1)
> atan(x) = 1.797589501402598e-132  (mant: 5746301358148411/2^53, exp: -437)
> 
> Note: these are hard-to-round cases, i.e. atan(x) is very close to
> the middle of two consecutive representable numbers.

Yes, I confirmed this bug, and it's fixed in the current upstream cvs...

Regards,
-- gotom



Reply to: