diff options
Diffstat (limited to 'include/math.h')
-rw-r--r-- | include/math.h | 84 |
1 files changed, 38 insertions, 46 deletions
diff --git a/include/math.h b/include/math.h index e21d34b868..3e4e020915 100644 --- a/include/math.h +++ b/include/math.h @@ -7,64 +7,56 @@ #include <math/math.h> #ifndef _ISOMAC +# include <libm-symbols.h> + /* Now define the internal interfaces. */ extern int __signgam; -# if IS_IN (libc) || IS_IN (libm) -hidden_proto (__finite) -hidden_proto (__isinf) -hidden_proto (__isnan) -hidden_proto (__finitef) -hidden_proto (__isinff) -hidden_proto (__isnanf) - -# ifndef __NO_LONG_DOUBLE_MATH -hidden_proto (__finitel) -hidden_proto (__isinfl) -hidden_proto (__isnanl) -# endif - -# if __HAVE_DISTINCT_FLOAT128 -hidden_proto (__finitef128) -hidden_proto (__isinff128) -hidden_proto (__isnanf128) -hidden_proto (__signbitf128) -# endif -# endif - -libm_hidden_proto (__fpclassify) -libm_hidden_proto (__fpclassifyf) -libm_hidden_proto (__issignaling) -libm_hidden_proto (__issignalingf) -libm_hidden_proto (__exp) -libm_hidden_proto (__expf) -libm_hidden_proto (__roundeven) +libc_libm_hidden_mathcall (finite) +libc_libm_hidden_mathcall (isinf) +libc_libm_hidden_mathcall (isnan) +libc_libm_hidden_mathcall (scalbn) +libc_libm_hidden_mathcall (signbit) -# ifndef __NO_LONG_DOUBLE_MATH -libm_hidden_proto (__fpclassifyl) -libm_hidden_proto (__issignalingl) -libm_hidden_proto (__expl) -libm_hidden_proto (__expm1l) -# endif - -# if __HAVE_DISTINCT_FLOAT128 -libm_hidden_proto (__fpclassifyf128) -libm_hidden_proto (__issignalingf128) -libm_hidden_proto (__expf128) -libm_hidden_proto (__expm1f128) -# endif +libm_hidden_mathcall (atan) +libm_hidden_mathcall (atan2) +libm_hidden_mathcall (ceil) +libm_hidden_mathcall (cos) +libm_hidden_mathcall (erf) +libm_hidden_mathcall (erfc) +libm_hidden_mathcall (exp) +libm_hidden_mathcall (expm1) +libm_hidden_mathcall (floor) +libm_hidden_mathcall (fpclassify) +libm_hidden_mathcall (frexp) +libm_hidden_mathcall (hypot) +libm_hidden_mathcall (ilogb) +libm_hidden_mathcall (issignaling) +libm_hidden_mathcall (ldexp) +libm_hidden_mathcall (log) +libm_hidden_mathcall (log1p) +libm_hidden_mathcall (nearbyint) +libm_hidden_mathcall (nextup) +libm_hidden_mathcall (rint) +libm_hidden_mathcall (round) +libm_hidden_mathcall (roundeven) +libm_hidden_mathcall (scalbln) +libm_hidden_mathcall (sin) +libm_hidden_mathcall (sincos) +libm_hidden_mathcall (sqrt) +libm_hidden_mathcall (trunc) # if !(defined __FINITE_MATH_ONLY__ && __FINITE_MATH_ONLY__ > 0) # ifndef NO_MATH_REDIRECT /* Declare sqrt for use within GLIBC. Compilers typically inline sqrt as a single instruction. Use an asm to avoid use of PLTs if it doesn't. */ -float (sqrtf) (float) asm ("__ieee754_sqrtf"); -double (sqrt) (double) asm ("__ieee754_sqrt"); +float (sqrtf) (float) asm ("__ieee754_sqrtf") libm_attr_hidden; +double (sqrt) (double) asm ("__ieee754_sqrt") libm_attr_hidden; # ifndef __NO_LONG_DOUBLE_MATH -long double (sqrtl) (long double) asm ("__ieee754_sqrtl"); +long double (sqrtl) (long double) asm ("__ieee754_sqrtl") libm_attr_hidden; # endif # if __HAVE_DISTINCT_FLOAT128 > 0 -_Float128 (sqrtf128) (_Float128) asm ("__ieee754_sqrtf128"); +_Float128 (sqrtf128) (_Float128) asm ("__ieee754_sqrtf128") libm_attr_hidden; # endif # endif # endif |