Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Jun 2015 17:26:19 -0700
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        "Montgomery-Smith, Stephen" <stephen@missouri.edu>
Cc:        "freebsd-numerics@freebsd.org" <freebsd-numerics@freebsd.org>
Subject:   Re: Let's get moving
Message-ID:  <20150602002619.GA45253@troutmask.apl.washington.edu>
In-Reply-To: <556CEB8C.90605@missouri.edu>
References:  <556CEB8C.90605@missouri.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jun 01, 2015 at 11:32:29PM +0000, Montgomery-Smith, Stephen wrote:
> Hey people,
> 
> I was looking at https://wiki.freebsd.org/Numerics, and we are stalling.

The wiki is out-of-date.  I've committed patches for erfcl, erfl,
and lgammal.  I'm working on powl and I'll do tgammal after I get
powl done.  I have versions of sincos[fl], which aren't quite ready,
but I would like to have available for my work on the Bessel functions.

> For example, we have working code for clog and clogf - why don't we
> commit it?
> 
> One of the reasons I bring this up is I would like to create a port for
> http://librsb.sourceforge.net/, and the only barriers are the lack of
> cpowf and cpow.  Right now I intend to commit it with a rather
> simplistic patch:

>From src/math_private.h

 * The C99 standard intends x+I*y to be used for this, but x+I*y is
 * currently unusable in general since gcc introduces many overflow,
 * underflow, sign and efficiency bugs by rewriting I*y as
 * (0.0+I)*(y+0.0*I) and laboriously computing the full complex product.
 * In particular, I*Inf is corrupted to NaN+I*Inf, and I*-0 is corrupted
 * to -0.0+I*0.0.

Last time I checked, clang was even worse with regards to I.

-- 
Steve



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