[PATCH] Recent libm additions
sgk at troutmask.apl.washington.edu
Sun Jul 15 21:13:18 UTC 2018
On Sun, Jul 15, 2018 at 02:00:37PM -0700, Matthew Macy wrote:
> On Sun, Jul 15, 2018 at 12:43 PM, Montgomery-Smith, Stephen
> <stephen at missouri.edu> wrote:
> > On 07/15/2018 02:09 PM, Warner Losh wrote:
> >> I'm not saying that he has a lock. I'm saying he's are domain expert and
> >> many mistakes can be avoided by talking to him.
> >> I'm saying we have history here, and that history, while poorly documented,
> >> wasn't followed. To the extent it is poorly documented, we should fix that.
> >> Warner
> > I agree that we should document the process. Maybe also include
> > freebsd-numerics@ on these discussions, as that is why it was created.
> > But I'm really glad these changes were committed. I have found the
> > people tend to drag their feet a lot on numerics issues.
> > Has anyone done an analysis of the OpenBSD powl functions from an
> > accuracy point of view? That is, to test how many ULP of error these
> > functions have? If not, I could give it a go, although not for several
> > months because life is very busy.
> They're also used by Julia. You might ask there first.
The FPU on i686-class hardware is set to use 53-bit precision.
powl.c likely has at least a 2**11 ULP for a (large?) number
of arguments. Go read the msun/src/math_private.h. You'll
find LD80C for constucting long double literal constants,
ENTERI() and RETURNI() marcos that toggle the precision of the
FPU. These are used in ld80 code, e.g., e_lgammal_r.c.
So, it doesn't matter what the Julia developers say unless their
testing was done on FreeBSD.
More information about the freebsd-numerics