diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2010-03-08 17:16:37 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2010-03-08 17:16:37 +0000 |
commit | 23a6adc2c38454ff01231a82841e9c8a0c09ff45 (patch) | |
tree | da7cb975677a93aca19967efbd3308dd623b3e54 /newlib/libm/common/sf_rint.c | |
parent | 1f440e4dbe41b1237c7a75c0723506a5cc2003d3 (diff) | |
download | cygnal-23a6adc2c38454ff01231a82841e9c8a0c09ff45.tar.gz cygnal-23a6adc2c38454ff01231a82841e9c8a0c09ff45.tar.bz2 cygnal-23a6adc2c38454ff01231a82841e9c8a0c09ff45.zip |
2010-03-08 Craig Howland <howland@LGSInnovations.com>
* libm/common/s_rint.c: Fix error when integral part had 18 bits and
fraction had bits set beyond first radix bit. Also, make 2-part
adjustment consistent with 1-part adjustment when adjusting fractional
bits.
* libm/common/sf_rint.c: Make fractional-bit adjustment consistent
with s_rint.c by setting 0b.01 instead of 0b.001.
Diffstat (limited to 'newlib/libm/common/sf_rint.c')
-rw-r--r-- | newlib/libm/common/sf_rint.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/newlib/libm/common/sf_rint.c b/newlib/libm/common/sf_rint.c index 6459b7a4c..bc0b46659 100644 --- a/newlib/libm/common/sf_rint.c +++ b/newlib/libm/common/sf_rint.c @@ -57,7 +57,7 @@ TWO23[2]={ i = (0x007fffff)>>j0; if((i0&i)==0) return x; /* x is integral */ i>>=1; - if((i0&i)!=0) i0 = (i0&(~i))|((0x100000)>>j0); + if((i0&i)!=0) i0 = (i0&(~i))|((0x200000)>>j0); } } else { if(!FLT_UWORD_IS_FINITE(ix)) return x+x; /* inf or NaN */ |