cvs commit: src/lib/msun/src s_rint.c s_rintf.c
Bruce Evans
bde at FreeBSD.org
Sat Jan 19 08:37:57 PST 2008
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
More information about the cvs-src
mailing list