Date: Mon, 7 Jun 2004 22:20:20 GMT From: David Schultz <das@FreeBSD.ORG> To: freebsd-standards@FreeBSD.org Subject: Re: standards/59797: Implement C99's round[f]() math fucntions Message-ID: <200406072220.i57MKKex016114@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR standards/59797; it has been noted by GNATS. From: David Schultz <das@FreeBSD.ORG> To: "Steven G. Kargl" <kargl@troutmask.apl.washington.edu> Cc: FreeBSD-gnats-submit@FreeBSD.ORG, freebsd-standards@FreeBSD.ORG Subject: Re: standards/59797: Implement C99's round[f]() math fucntions Date: Sun, 6 Jun 2004 23:38:43 -0700 On Sun, Jun 06, 2004, Steven G. Kargl wrote: > I would have to go back and review the PR for all the discussion, > but I thought bde had proposed using rint(3) with an appropriate > rounding mode. Anyway, whatever you decide to do is fine with > me. I found that setting the rounding mode and calling rint(3) is significantly slower on x87, and that's not counting the special handling for the halfway cases. The bit-fiddling approach is a little bit faster than yours (I compared against ceil()), but it's much harder to maintain. Consider that rintf() still has bugs, and it has been around for over a decade! > I looked at the glibc implementation of round(). It does > bit twiddling, but I would definitely recommend not using > the glibc version because of licensing and possible copyright > infringement concerns [hiint compare glibc's round() with > fdlibm's ceil()]. Hmmm...the glibc implementation does indeed appear to be plagiarized. Perhaps someone should let the glibc folks know.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200406072220.i57MKKex016114>