summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--math/math_private.h3
-rw-r--r--sysdeps/ieee754/flt-32/s_scalbnf.c6
3 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 459ee48d55..4c012d176f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
 
+	* math/math_private.h: Declare __copysignf.
+	* sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
+	copysignf.
+
 	* sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
 	__signbit, and __signbitl inline functions.
 
diff --git a/math/math_private.h b/math/math_private.h
index 84c1d9ad34..f545841df0 100644
--- a/math/math_private.h
+++ b/math/math_private.h
@@ -232,6 +232,9 @@ extern float __kernel_cosf (float,float);
 extern float __kernel_tanf (float,float,int);
 extern int   __kernel_rem_pio2f (float*,float*,int,int,int, const int32_t*);
 
+/* internal functions.  */
+extern float __copysignf (float x, float __y);
+
 
 /* ieee style elementary long double functions */
 extern long double __ieee754_sqrtl (long double);
diff --git a/sysdeps/ieee754/flt-32/s_scalbnf.c b/sysdeps/ieee754/flt-32/s_scalbnf.c
index 11b77bd6c2..407cf607c7 100644
--- a/sysdeps/ieee754/flt-32/s_scalbnf.c
+++ b/sysdeps/ieee754/flt-32/s_scalbnf.c
@@ -49,13 +49,13 @@ tiny   = 1.0e-30;
         if (k==0xff) return x+x;		/* NaN or Inf */
         k = k+n;
         if (n> 50000 || k >  0xfe)
-	  return huge*copysignf(huge,x); /* overflow  */
+	  return huge*__copysignf(huge,x); /* overflow  */
 	if (n< -50000)
-	  return tiny*copysignf(tiny,x);	/*underflow*/
+	  return tiny*__copysignf(tiny,x);	/*underflow*/
         if (k > 0) 				/* normal result */
 	    {SET_FLOAT_WORD(x,(ix&0x807fffff)|(k<<23)); return x;}
         if (k <= -25)
-	    return tiny*copysignf(tiny,x);	/*underflow*/
+	    return tiny*__copysignf(tiny,x);	/*underflow*/
         k += 25;				/* subnormal result */
 	SET_FLOAT_WORD(x,(ix&0x807fffff)|(k<<23));
         return x*twom25;