This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH] Fix float range reduction problems (#14283)
- From: Andreas Schwab <schwab at linux-m68k dot org>
- To: libc-alpha at sourceware dot org
- Date: Sat, 07 Jul 2012 00:01:00 +0200
- Subject: [PATCH] Fix float range reduction problems (#14283)
This fixes the same bug for ppc.
Andreas.
[BZ #14283]
* sysdeps/powerpc/fpu/k_rem_pio2f.c (__fp_kernel_rem_pio2f): Shift
by 7 not 8 to examine high bit of fractional part.
diff --git a/sysdeps/powerpc/fpu/k_rem_pio2f.c b/sysdeps/powerpc/fpu/k_rem_pio2f.c
index 2060642..c388f25 100644
--- a/sysdeps/powerpc/fpu/k_rem_pio2f.c
+++ b/sysdeps/powerpc/fpu/k_rem_pio2f.c
@@ -1,5 +1,5 @@
/* k_rem_pio2f.c -- float version of e_rem_pio2.c
- Copyright (C) 2011 Free Software Foundation, Inc.
+ Copyright (C) 2011-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Adhemerval Zanella <azanella@br.ibm.com>, 2011
@@ -153,7 +153,7 @@ recompute:
ih = iq[jz - 1] >> (7 - q0);
}
else if (q0 == 0)
- ih = iq[jz - 1] >> 8;
+ ih = iq[jz - 1] >> 7;
else if (z >= 0.5)
ih = 2;
--
1.7.11.1
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."