summaryrefslogtreecommitdiff
path: root/libc/sysdeps/ieee754/flt-32/k_tanf.c
diff options
context:
space:
mode:
authorjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2012-07-31 15:30:38 +0000
committerjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2012-07-31 15:30:38 +0000
commitdd3105b347f432016fcdc1abd472c3717f557c9e (patch)
treecbaaecdaa1d3ad240177c9040f7f46c1387716ce /libc/sysdeps/ieee754/flt-32/k_tanf.c
parent20f73aac36c2b2c240dcc379d5117488fe44960c (diff)
downloadeglibc2-dd3105b347f432016fcdc1abd472c3717f557c9e.tar.gz
Merge changes between r19464 and r19920 from /fsf/trunk.
git-svn-id: svn://svn.eglibc.org/trunk@19921 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'libc/sysdeps/ieee754/flt-32/k_tanf.c')
-rw-r--r--libc/sysdeps/ieee754/flt-32/k_tanf.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libc/sysdeps/ieee754/flt-32/k_tanf.c b/libc/sysdeps/ieee754/flt-32/k_tanf.c
index 92206069c..be9a5d0f0 100644
--- a/libc/sysdeps/ieee754/flt-32/k_tanf.c
+++ b/libc/sysdeps/ieee754/flt-32/k_tanf.c
@@ -56,6 +56,8 @@ float __kernel_tanf(float x, float y, int iy)
z = pio4-x;
w = pio4lo-y;
x = z+w; y = 0.0;
+ if (fabsf (x) < 0x1p-13f)
+ return (1 - ((hx >> 30) & 2)) * iy * (1.0f - 2 * iy * x);
}
z = x*x;
w = z*z;