diff --git a/lib/msun/src/k_tan.c b/lib/msun/src/k_tan.c index 16b2dd00b2df..15145a6de87c 100644 --- a/lib/msun/src/k_tan.c +++ b/lib/msun/src/k_tan.c @@ -85,9 +85,7 @@ __kernel_tan(double x, double y, int iy) { if ((int) x == 0) { /* generate inexact */ u_int32_t low; GET_LOW_WORD(low,x); - if (((ix | low) | (iy + 1)) == 0) - return one / fabs(x); - else { + { if (iy == 1) return x; else { /* compute -1 / (x+y) carefully */ diff --git a/lib/msun/src/k_tanf.c b/lib/msun/src/k_tanf.c index 47aab9c3793d..e344787fd956 100644 --- a/lib/msun/src/k_tanf.c +++ b/lib/msun/src/k_tanf.c @@ -47,9 +47,7 @@ __kernel_tanf(float x, float y, int iy) ix = hx&0x7fffffff; /* high word of |x| */ if(ix<0x31800000) { /* x < 2**-28 */ if ((int) x == 0) { /* generate inexact */ - if ((ix | (iy + 1)) == 0) - return one / fabsf(x); - else { + { if (iy == 1) return x; else { /* compute -1 / (x+y) carefully */