Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Jan 2008 16:37:57 +0000 (UTC)
From:      Bruce Evans <bde@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/lib/msun/src s_rint.c s_rintf.c
Message-ID:  <200801191637.m0JGbvJg053050@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
bde         2008-01-19 16:37:57 UTC

  FreeBSD src repository

  Modified files:
    lib/msun/src         s_rint.c s_rintf.c 
  Log:
  Use STRICT_ASSIGN() instead of assorted direct volatile hacks to work
  around assignments not working for gcc on i386.  Now volatile hacks
  for rint() and rintf() don't needlessly pessimize so many arches
  and the remaining pessimizations (for arm and powerpc) can be avoided
  centrally.
  
  This cleans up after s_rint.c 1.3 and 1.13 and s_rintf.c 1.3 and 1.9:
  - s_rint.c 1.13 broke 1.3 by only using a volatile cast hack in 1 place
    when it was needed in 2 places, and the volatile cast hack stopped
    working with gcc-4.  These bugs only affected correctness tests on
    i386 since i386 normally uses asm rint() and doesn't support the
    extra precision mode that would break assignments of doubles.
  - s_rintf.c 1.9 improved(?) on 1.3 by using a volatile variable hack
    instead of an extra-precision variable hack, but it declared 2
    variables as volatile when only 1 variable needed to be volatile.
    This only affected speed tests on i386 since i386 uses asm rintf().
  
  Revision  Changes    Path
  1.15      +2 -2      src/lib/msun/src/s_rint.c
  1.11      +6 -4      src/lib/msun/src/s_rintf.c



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