Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 9 Nov 2013 10:27:35 -0800
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        David Schultz <das@FreeBSD.ORG>
Cc:        "freebsd-numerics@FreeBSD.org" <freebsd-numerics@FreeBSD.org>, David Chisnall <theraven@FreeBSD.org>, Bruce Evans <brde@optusnet.com.au>
Subject:   Re: MUSL math functions
Message-ID:  <20131109182735.GA78719@troutmask.apl.washington.edu>
In-Reply-To: <20131108085039.GA1821@zim.MIT.EDU>
References:  <DFD5EA35-ABDA-4A09-BFC7-9452D650C7FE@FreeBSD.org> <20131031133352.GA59918@troutmask.apl.washington.edu> <20131101072032.P1002@besplex.bde.org> <20131108085039.GA1821@zim.MIT.EDU>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Nov 08, 2013 at 12:50:39AM -0800, David Schultz wrote:
> On Fri, Nov 01, 2013, Bruce Evans wrote:

I wrote:

>>> Have you looked at the code?  Hint, I have.  Here's ccoshl().
>>>
>>> #include "libm.h"
>>>
>>> //FIXME
>>> long double complex ccoshl(long double complex z)
>>> {
>>> 	return ccosh(z);
>>> }
> 
> Is there anything usable in there? Thanks for the pointer in any case!

I haven't found anything usable.  Many of the musl files have
FreeBSD ident strings.  I should note that either musl or
openlibm have some assembly files, but  I haven't read them.
These might use newer cpu-specific instructions.

>>> Yes.  I object to importing anything from MUSL or OpenBSD or NetBSD
>>> without review or testing.  It also appears that these functions are
>>> only available for ld80 archs.  FreeBSD has both ld80 and ld128.
>> 
>> Supporting ld128 can be a blocker.  Apart from increasing the amount of
>> code needed, the extra precision sometimes expands the technical
>> complications a lot.
> 
> I think I was the one who proposed several years ago that we
> should develop the ld80 and ld128 versions at the same time
> because (a) it's more efficient to do both while you have the
> algorithm in your head and (b) the ld128 versions probably would
> never happen otherwise.

At first I was hesitant to do ld128 (mostly because of access to 
hardware), but now it forces me to think about the algorithms.
ld80 on i386 has to deal with problems with FP_PE.

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131109182735.GA78719>