|
|
Message-ID: <20120315032304.GJ5728@port70.net>
Date: Thu, 15 Mar 2012 04:23:04 +0100
From: Szabolcs Nagy <nsz@...t70.net>
To: musl@...ts.openwall.com
Subject: Re: correctly rounded sqrt
* Szabolcs Nagy <nsz@...t70.net> [2012-03-15 02:46:48 +0100]:
> /* dekker exact mult u*u == hi + lo */
> static void sq(long double *hi, long double *lo, long double u)
> {
> static const long double c = 1.0 + 0x1p33;
this was wrong, c = 1.0 + 0x1p32; the correct value
and probably
*hi = u1*u1;
*lo = u1*u2*2.0 + u2*u2;
is enough instead of
> *hi = u*u;
> *lo = (u1*u1 - *hi) + u1*u2*2.0 + u2*u2;
but now that we figured out the fpu status register based
solution this does not matter..
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.