From owner-freebsd-numerics@FreeBSD.ORG Tue Jun 2 00:40:37 2015 Return-Path: Delivered-To: freebsd-numerics@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 522E1707 for ; Tue, 2 Jun 2015 00:40:37 +0000 (UTC) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "troutmask", Issuer "troutmask" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 1730A1CD8 for ; Tue, 2 Jun 2015 00:40:37 +0000 (UTC) (envelope-from sgk@troutmask.apl.washington.edu) Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.14.9/8.14.9) with ESMTP id t520QJjU045378 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 1 Jun 2015 17:26:20 -0700 (PDT) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.9/8.14.9/Submit) id t520QJNl045377; Mon, 1 Jun 2015 17:26:19 -0700 (PDT) (envelope-from sgk) Date: Mon, 1 Jun 2015 17:26:19 -0700 From: Steve Kargl To: "Montgomery-Smith, Stephen" Cc: "freebsd-numerics@freebsd.org" Subject: Re: Let's get moving Message-ID: <20150602002619.GA45253@troutmask.apl.washington.edu> References: <556CEB8C.90605@missouri.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <556CEB8C.90605@missouri.edu> User-Agent: Mutt/1.5.23 (2014-03-12) X-BeenThere: freebsd-numerics@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Discussions of high quality implementation of libm functions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Jun 2015 00:40:37 -0000 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