From 0abaf3e48af6037fff9ed7cbfbc2a68b99096eb2 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Fri, 6 Jul 2012 23:56:57 +0200 Subject: Fix float range reduction problems (#14283) --- ChangeLog | 4 ++++ sysdeps/powerpc/fpu/k_rem_pio2f.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 06226b9147..8e6f0132f3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-07-06 Andreas Schwab + [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. + [BZ #14042] * sysdeps/powerpc/powerpc32/ppc-mcount.S [SHARED]: Don't use PLT for call to __mcount_internal. diff --git a/sysdeps/powerpc/fpu/k_rem_pio2f.c b/sysdeps/powerpc/fpu/k_rem_pio2f.c index 2060642743..c388f25b05 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 , 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; -- cgit 1.4.1