Fix PLT uses in libm on powerpc
authorAndreas Schwab <schwab@redhat.com>
Thu, 15 Sep 2011 09:16:03 +0000 (11:16 +0200)
committerAndreas Schwab <schwab@redhat.com>
Thu, 15 Sep 2011 13:35:38 +0000 (15:35 +0200)
ChangeLog
sysdeps/powerpc/fpu/e_hypot.c
sysdeps/powerpc/fpu/e_hypotf.c
sysdeps/powerpc/fpu/e_rem_pio2f.c
sysdeps/powerpc/fpu/k_rem_pio2f.c

index 57195c2..6dd445b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2011-09-15  Andreas Schwab  <schwab@redhat.com>
+
+       * sysdeps/powerpc/fpu/e_hypot.c (__ieee754_hypot): Use
+       __ieee754_sqrt instead of sqrt.
+       * sysdeps/powerpc/fpu/e_hypotf.c (__ieee754_hypotf): Use
+       __ieee754_sqrtf instead of sqrtf.
+       * sysdeps/powerpc/fpu/e_rem_pio2f.c (__ieee754_rem_pio2f): Use
+       __floorf instead of floorf.
+       * sysdeps/powerpc/fpu/k_rem_pio2f.c (__fp_kernel_rem_pio2f): Use
+       __floorf, __truncf instead of floorf, truncf.
+
 2011-09-14  Ulrich Drepper  <drepper@gmail.com>
 
        * sysdeps/x86_64/fpu/s_copysign.S [ELF]: Use correct section.
index 22bd563..afbcc18 100644 (file)
@@ -96,7 +96,7 @@ __ieee754_hypot (double x, double y)
     {
       x *= twoM600;
       y *= twoM600;
-      return sqrt (x * x + y * y) / twoM600;
+      return __ieee754_sqrt (x * x + y * y) / twoM600;
     }
   if (y < twoM500)
     {
@@ -104,14 +104,14 @@ __ieee754_hypot (double x, double y)
        {
          x *= two1022;
          y *= two1022;
-         return sqrt (x * x + y * y) / two1022;
+         return __ieee754_sqrt (x * x + y * y) / two1022;
        }
       else
        {
          x *= two600;
          y *= two600;
-         return sqrt (x * x + y * y) / two600;
+         return __ieee754_sqrt (x * x + y * y) / two600;
        }
     }
-  return sqrt (x * x + y * y);
+  return __ieee754_sqrt (x * x + y * y);
 }
index 3e6c597..02ad773 100644 (file)
@@ -97,7 +97,7 @@ __ieee754_hypotf (float x, float y)
     {
       x *= twoM60;
       y *= twoM60;
-      return sqrtf (x * x + y * y) / twoM60;
+      return __ieee754_sqrtf (x * x + y * y) / twoM60;
     }
   if (y < twoM50)
     {
@@ -105,14 +105,14 @@ __ieee754_hypotf (float x, float y)
        {
          x *= two126;
          y *= two126;
-         return sqrtf (x * x + y * y) / two126;
+         return __ieee754_sqrtf (x * x + y * y) / two126;
        }
       else
        {
          x *= two60;
          y *= two60;
-         return sqrtf (x * x + y * y) / two60;
+         return __ieee754_sqrtf (x * x + y * y) / two60;
        }
     }
-  return sqrtf (x * x + y * y);
+  return __ieee754_sqrtf (x * x + y * y);
 }
index 9325eeb..e4427e4 100644 (file)
@@ -112,7 +112,7 @@ __ieee754_rem_pio2f (float x, float *y)
     }
   if (ax <= pio2_2e7)
     {
-      n = floorf (ax * invpio2 + half);
+      n = __floorf (ax * invpio2 + half);
       i = (int32_t) n;
       r = ax - n * pio2_1;
       w = n * pio2_1t;         /* 1st round good to 40 bit */
@@ -168,11 +168,11 @@ __ieee754_rem_pio2f (float x, float *y)
   e0 = __float_and8 (ax / 128.0);
   z = ax / e0;
 
-  tx[0] = floorf (z);
+  tx[0] = __floorf (z);
   z = (z - tx[0]) * two8;
-  tx[1] = floorf (z);
+  tx[1] = __floorf (z);
   z = (z - tx[1]) * two8;
-  tx[2] = floorf (z);
+  tx[2] = __floorf (z);
 
   nx = 3;
   while (tx[nx - 1] == zero)
index 9635340..7090605 100644 (file)
@@ -135,16 +135,16 @@ recompute:
   /* distill q[] into iq[] reversingly */
   for (i = 0, j = jz, z = q[jz]; j > 0; i++, j--)
     {
-      fw = truncf (twon8 * z);
+      fw = __truncf (twon8 * z);
       iq[i] = (int32_t) (z - two8 * fw);
       z = q[j - 1] + fw;
     }
 
   /* compute n */
   z = __scalbnf (z, q0);       /* actual value of z */
-  z -= 8.0 * floorf (z * 0.125);       /* trim off integer >= 8 */
+  z -= 8.0 * __floorf (z * 0.125);     /* trim off integer >= 8 */
   n = (int32_t) z;
-  z -= truncf (z);
+  z -= __truncf (z);
   ih = 0;
   if (q0 > 0)
     {                          /* need iq[jz-1] to determine n */
@@ -234,7 +234,7 @@ recompute:
       z = __scalbnf (z, -q0);
       if (z >= two8)
        {
-         fw = truncf (twon8 * z);
+         fw = __truncf (twon8 * z);
          iq[jz] = (int32_t) (z - two8 * fw);
          jz += 1;
          q0 += 8;