rint() bug

Steve Kargl sgk at troutmask.apl.washington.edu
Wed May 9 19:30:15 UTC 2007


On Wed, May 09, 2007 at 12:02:03PM -0700, Luoqi Chen wrote:
> On Wednesday 09 May 2007 07:55:38 -0700 Steve Kargl wrote:
> > On Wed, May 09, 2007 at 02:16:32AM -0700, Luoqi Chen wrote:
> > > Does anyone know about this particular bug (and have a plan to fix it)?
> > > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4831589
> >
> > On i386 and amd64, FreeBSD uses assembly code contributed
> > by David Schultz.  On platforms that use fdlibm code, the
> > bug was fixed 17 months ago.  cvsweb is a wonderful tool.
> >
> > http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/msun/src/s_rint.c
> 
> Thanks, Steve. I forgot to check with the CVS, I was looking at 6-R branch, 
> which still doesn't have Bruce's fix (I guess I should have posted my 
> question to -stable instead). Any time table for a merge?
> 
> I looked at the latest msun/amd64, there was no assembly version for rint().
> Since C99 is not supported everywhere (4.x systems, e.g.), I still have to
> use rint() for portability. Does anyone plan to write a piece of assembly code
> for rint() on amd64? Besides the bug, the C version is noticeably slower.
> 

David Schultz (das) wrote a amd64 version of lrint().  If you can
use that, then you should consider doing so.  lrint() is in 
6-stable.  As to merging changes into 6-stable, I have no idea if
or when that may happen.

-- 
Steve


More information about the freebsd-current mailing list