diff options
author | Joseph Myers <joseph@codesourcery.com> | 2013-05-17 19:04:08 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2013-05-17 19:04:08 +0000 |
commit | bb38759d6dc78b1818f5d23129a362d6f5aba267 (patch) | |
tree | eeb0b291af38d05e91c37d54d7dd48dc8a4a5c05 /sysdeps/ieee754/dbl-64/e_remainder.c | |
parent | a00bdcf0e059a6bdb0a258a624437e326cde49e4 (diff) | |
download | glibc-bb38759d6dc78b1818f5d23129a362d6f5aba267.tar.gz glibc-bb38759d6dc78b1818f5d23129a362d6f5aba267.tar.xz glibc-bb38759d6dc78b1818f5d23129a362d6f5aba267.zip |
Fix remainder exceptions and directed-rounding results (bugs 15480, 15485).
Diffstat (limited to 'sysdeps/ieee754/dbl-64/e_remainder.c')
-rw-r--r-- | sysdeps/ieee754/dbl-64/e_remainder.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sysdeps/ieee754/dbl-64/e_remainder.c b/sysdeps/ieee754/dbl-64/e_remainder.c index 39ca0c2d0e..2d20bb1dfe 100644 --- a/sysdeps/ieee754/dbl-64/e_remainder.c +++ b/sysdeps/ieee754/dbl-64/e_remainder.c @@ -51,6 +51,7 @@ double __ieee754_remainder(double x, double y) ky=t.i[HIGH_HALF]; /*------ |x| < 2^1023 and 2^-970 < |y| < 2^1024 ------------------*/ if (kx<0x7fe00000 && ky<0x7ff00000 && ky>=0x03500000) { + SET_RESTORE_ROUND_NOEX (FE_TONEAREST); if (kx+0x00100000<ky) return x; if ((kx-0x01500000)<ky) { z=x/t.x; |