Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Feb 2011 01:18:45 -0800
From:      Murray Stokely <murray@stokely.org>
To:        Rainer Hurling <rhurlin@gwdg.de>, freebsd-standards@freebsd.org,  Murray Stokely <murray@stokely.org>
Subject:   Re: Support for C99 complex type required
Message-ID:  <AANLkTimP1T9-hm-JiAoRQ=R_4=GRMqnNYxNccecuR%2B-c@mail.gmail.com>
In-Reply-To: <20110207200839.GA82306@zim.MIT.EDU>
References:  <4D4EF746.9070502@gwdg.de> <20110207200839.GA82306@zim.MIT.EDU>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Feb 7, 2011 at 12:08 PM, David Schultz <das@freebsd.org> wrote:
> The 'complex' type and rudimentary operations on complex numbers
> are supported, but the math library is missing all of the
> transcendental functions on complex numbers. =A0There is some
> ongoing work in the area, but due to time constraints, it will
> likely be a while before we have complete support. =A0In the mean
> time, you can see /usr/include/complex.h for a list of supported
> functions. =A0I recall someone mentioning that there is a port that
> provides most of the missing functionality.

Hi David,

Is there any reason we can't pull in these missing libm routines from
NetBSD?  They seem to have pulled in code from netlib and gotten
permission to relicense it under the BSD license.  E.g. here is one of
the functions our FreeBSD 9 libm still lacks AFAICT:

  http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libm/complex/cexp.c?only_with=
_tag=3DMAIN

Also, Darwin seems to have picked up much of there C99 math support
from NetBSD as well, although it appears they've added more under an
APSL license and they provide assembly language code for Intel, Arm,
and PowerPC :

  http://www.opensource.apple.com/source/Libm/Libm-315/Source/Intel/
  http://www.opensource.apple.com/source/Libm/Libm-315/Source/complex.h

Pulling in the APSL code may be a bit more controversial (though I
think warranted), but pulling in code from NetBSD seems like a no
brainer given that this standard is over a decade old and modern
software like Mplayer, R, etc depend on the newer C99 functions.

Does the ongoing work in this area you describe involve porting the
NetBSD code or are you talking about another implementation?

                   - Murray



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimP1T9-hm-JiAoRQ=R_4=GRMqnNYxNccecuR%2B-c>