summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2013-05-17 19:04:08 +0000
committerJoseph Myers <joseph@codesourcery.com>2013-05-17 19:04:08 +0000
commitbb38759d6dc78b1818f5d23129a362d6f5aba267 (patch)
treeeeb0b291af38d05e91c37d54d7dd48dc8a4a5c05 /sysdeps/ieee754
parenta00bdcf0e059a6bdb0a258a624437e326cde49e4 (diff)
Fix remainder exceptions and directed-rounding results (bugs 15480, 15485).
Diffstat (limited to 'sysdeps/ieee754')
-rw-r--r--sysdeps/ieee754/dbl-64/e_remainder.c1
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;