Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Jul 2004 00:30:00 -0700
From:      Kris Kennaway <kris@obsecurity.org>
To:        David Schultz <das@FreeBSD.org>
Cc:        cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/lib/msun Makefile src/lib/msun/src math.h s_isfinite.c s_isnormal.c src/lib/libc/alpha/gen Makefile.inc isinf.c src/lib/libc/amd64/gen Makefile.inc isinf.c src/lib/libc/arm/gen Makefile.inc isinf.c src/lib/libc/i386/gen ...
Message-ID:  <20040709073000.GA10132@xor.obsecurity.org>
In-Reply-To: <200407090332.i693WenK038766@repoman.freebsd.org>
References:  <200407090332.i693WenK038766@repoman.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--wRRV7LY7NUeQGEoC
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Jul 09, 2004 at 03:32:40AM +0000, David Schultz wrote:

>   Log:
>   Implement the classification macros isfinite(), isinf(), isnan(), and
>   isnormal() the hard way, rather than relying on fpclassify().  This is
>   a lose in the sense that we need a total of 12 functions, but it is
>   necessary for binary compatibility because we have never bumped libm's
>   major version number.  In particular, isinf(), isnan(), and isnanf()
>   were BSD libc functions before they were C99 macros, so we can't
>   reimplement them in terms of fpclassify() without adding a dependency
>   on libc.so.5.  I have tried to arrange things so that programs that
>   could be compiled in FreeBSD 4.X will generate the same external
>   references when compiled in 5.X.  At the same time, the new macros
>   should remain C99-compliant.
>  =20
>   The isinf() and isnan() functions remain in libc for historical
>   reasons; however, I have moved the functions that implement the macros
>   isfinite() and isnormal() to libm where they belong.  Moreover,
>   half a dozen MD versions of isinf() and isnan() have been replaced
>   with MI versions that work equally well.
>  =20
>   Prodded by:     kris

Thanks very much!  I'll roll a new world and test this on the package
cluster.

Kris

--wRRV7LY7NUeQGEoC
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFA7kl4Wry0BWjoQKURAjcLAKCwhmQBg7IFJ6ecCFdgRU2qefWujgCfa2nT
SRcEhmnHlH2g2AeCG8WKGMM=
=/OT7
-----END PGP SIGNATURE-----

--wRRV7LY7NUeQGEoC--



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