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 ...
Kris Kennaway
kris at obsecurity.org
Fri Jul 9 00:30:02 PDT 2004
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.
>
> 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.
>
> Prodded by: kris
Thanks very much! I'll roll a new world and test this on the package
cluster.
Kris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/cvs-src/attachments/20040709/d9de7e1f/attachment.bin
More information about the cvs-src
mailing list