about summary refs log tree commit diff
path: root/math
diff options
context:
space:
mode:
Diffstat (limited to 'math')
-rw-r--r--math/Makefile6
-rw-r--r--math/bits/mathcalls.h11
-rw-r--r--math/libm.map2
-rw-r--r--math/math_private.h3
4 files changed, 17 insertions, 5 deletions
diff --git a/math/Makefile b/math/Makefile
index 103937e580..9f2d3367e5 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -48,15 +48,15 @@ libm-calls = e_acos e_acosh e_asin e_atan2 e_atanh e_cosh e_exp e_fmod	\
 	     s_floor s_frexp s_ilogb s_ldexp s_log1p s_logb 		\
 	     s_modf s_nextafter s_nextafterx s_rint s_scalbn s_scalbln	\
 	     s_significand s_sin s_tan s_tanh w_acos w_acosh w_asin	\
-	     w_atan2 w_atanh w_cosh w_drem w_exp w_exp2 w_fmod w_gamma	\
-	     w_hypot w_j0 w_j1 w_jn w_lgamma w_lgamma_r			\
+	     w_atan2 w_atanh w_cosh w_drem w_exp w_exp2 w_exp10 w_fmod	\
+	     w_gamma w_hypot w_j0 w_j1 w_jn w_lgamma w_lgamma_r		\
 	     w_log w_log10 w_pow w_remainder w_scalb w_sinh w_sqrt	\
 	     s_signbit s_fpclassify s_fmax s_fmin s_fdim s_nan s_trunc	\
 	     s_remquo s_log2 s_exp2 s_round s_nearbyint s_sincos	\
 	     conj cimag creal cabs carg s_cexp s_csinh s_ccosh s_clog	\
 	     s_catan s_casin s_ccos s_csin s_ctan s_ctanh s_cacos	\
 	     s_casinh s_cacosh s_catanh s_csqrt s_cpow s_cproj s_clog10 \
-	     s_fma s_lrint s_llrint s_lround s_llround
+	     s_fma s_lrint s_llrint s_lround s_llround e_exp10
 libm-routines = $(libm-support) $(libm-calls) \
 		$(patsubst %_rf,%f_r,$(libm-calls:=f))	\
 		$(long-m-$(long-double-fcts))
diff --git a/math/bits/mathcalls.h b/math/bits/mathcalls.h
index 3073f25be4..67e86a7d51 100644
--- a/math/bits/mathcalls.h
+++ b/math/bits/mathcalls.h
@@ -1,5 +1,5 @@
 /* Prototype declarations for math functions; helper file for <math.h>.
-   Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -39,7 +39,7 @@
    This is just like __MATHCALL but for a function returning `TYPE'
    instead of `_Mdouble_'.  In all of these cases, there is still
    both a `NAME' and a `NAMEf' that takes `float' arguments.
-   
+
    Note that there must be no whitespace before the argument passed for
    NAME, to make token pasting work with -traditional.  */
 
@@ -95,6 +95,13 @@ __MATHCALL (atanh,, (_Mdouble_ __x));
 /* Exponential function of X.  */
 __MATHCALL (exp,, (_Mdouble_ __x));
 
+#ifdef __USE_GNU
+/* A function missing in all standards: compute exponent to base ten.  */
+__MATHCALL (exp10,, (_Mdouble_ __x));
+/* Another name occasionally used.  */
+__MATHCALL (pow10,, (_Mdouble_ __x));
+#endif
+
 /* Break VALUE into a normalized fraction and an integral power of 2.  */
 __MATHCALL (frexp,, (_Mdouble_ __x, int *__exponent));
 
diff --git a/math/libm.map b/math/libm.map
index 9220171ae5..3fc4167213 100644
--- a/math/libm.map
+++ b/math/libm.map
@@ -72,6 +72,7 @@ GLIBC_2.1 {
 
     # mathematical functions
     exp2; exp2f; exp2l;
+    exp10; exp10f; exp10l;
     fdim; fdimf; fdiml;
     fma; fmaf; fmal;
     fmax; fmaxf; fmaxl;
@@ -80,6 +81,7 @@ GLIBC_2.1 {
     nan; nanf; nanl;
     nearbyint; nearbyintf; nearbyintl;
     nextafterx; nextafterxf; nextafterxl;
+    pow10; pow10f; pow10l;
     remquo; remquof; remquol;
     lrint; lrintf; lrintl;
     llrint; llrintf; llrintl;
diff --git a/math/math_private.h b/math/math_private.h
index 4b3b5be3bf..6d51930230 100644
--- a/math/math_private.h
+++ b/math/math_private.h
@@ -253,6 +253,7 @@ extern double __ieee754_asin __P((double));
 extern double __ieee754_atan2 __P((double,double));
 extern double __ieee754_exp __P((double));
 extern double __ieee754_exp2 __P((double));
+extern double __ieee754_exp10 __P((double));
 extern double __ieee754_cosh __P((double));
 extern double __ieee754_fmod __P((double,double));
 extern double __ieee754_pow __P((double,double));
@@ -292,6 +293,7 @@ extern float __ieee754_asinf __P((float));
 extern float __ieee754_atan2f __P((float,float));
 extern float __ieee754_expf __P((float));
 extern float __ieee754_exp2f __P((float));
+extern float __ieee754_exp10f __P((float));
 extern float __ieee754_coshf __P((float));
 extern float __ieee754_fmodf __P((float,float));
 extern float __ieee754_powf __P((float,float));
@@ -330,6 +332,7 @@ extern long double __ieee754_asinl __P((long double));
 extern long double __ieee754_atan2l __P((long double,long double));
 extern long double __ieee754_expl __P((long double));
 extern long double __ieee754_exp2l __P((long double));
+extern long double __ieee754_exp10l __P((long double));
 extern long double __ieee754_coshl __P((long double));
 extern long double __ieee754_fmodl __P((long double,long double));
 extern long double __ieee754_powl __P((long double,long double));