From 34bb10aabfedb5198388693d17c747cb11fbfb4b Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Wed, 29 Nov 2017 21:25:41 +0000 Subject: Use libm_alias_float for x86_64. Continuing the preparation for additional _FloatN / _FloatNx function aliases, this patch makes x86_64 libm function implementations use libm_alias_float to define function aliases, or libm_alias_float_other where the main name is defined with versioned_symbol. Tested with the glibc testsuite for x86_64, and tested with build-many-glibcs.py for all its x86_64 configurations that installed stripped shared libraries are unchanged by the patch. * sysdeps/x86_64/fpu/multiarch/e_exp2f.c: Include . (exp2f): Define using libm_alias_float, or libm_alias_float_other if [SHARED]. * sysdeps/x86_64/fpu/multiarch/e_expf.c: Include . (exp2f): Define using libm_alias_float, or libm_alias_float_other if [SHARED]. * sysdeps/x86_64/fpu/multiarch/e_log2f.c: Include . (exp2f): Define using libm_alias_float, or libm_alias_float_other if [SHARED]. * sysdeps/x86_64/fpu/multiarch/e_logf.c: Include . (exp2f): Define using libm_alias_float, or libm_alias_float_other if [SHARED]. * sysdeps/x86_64/fpu/multiarch/e_powf.c: Include . (exp2f): Define using libm_alias_float, or libm_alias_float_other if [SHARED]. * sysdeps/x86_64/fpu/multiarch/s_ceilf.c: Include . (ceilf): Define using libm_alias_float. * sysdeps/x86_64/fpu/multiarch/s_floorf.c: Include . (floorf): Define using libm_alias_float. * sysdeps/x86_64/fpu/multiarch/s_fmaf.c: Include . (fmaf): Define using libm_alias_float. * sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c: Include . (nearbyintf): Define using libm_alias_float. * sysdeps/x86_64/fpu/multiarch/s_rintf.c: Include . (rintf): Define using libm_alias_float. * sysdeps/x86_64/fpu/multiarch/s_truncf.c: Include . (truncf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_copysignf.S: Include . (copysignf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_cosf.S: Include . (cosf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_fabsf.c: Include . (fabsf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_fmaxf.S: Include . (fmaxf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_fminf.S: Include . (fminf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_llrintf.S: Include . (llrintf): Define using libm_alias_float. [!__ILP32__] (lrintf): Likewise. * sysdeps/x86_64/fpu/s_sincosf.S: Include . (sincosf): Define using libm_alias_float. * sysdeps/x86_64/fpu/s_sinf.S: Include . (sinf): Define using libm_alias_float. * sysdeps/x86_64/x32/fpu/s_lrintf.S: Include . (lrintf): Define using libm_alias_float. --- sysdeps/x86_64/fpu/multiarch/e_exp2f.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'sysdeps/x86_64/fpu/multiarch/e_exp2f.c') diff --git a/sysdeps/x86_64/fpu/multiarch/e_exp2f.c b/sysdeps/x86_64/fpu/multiarch/e_exp2f.c index 13cfcf9b8c..06764a2a9e 100644 --- a/sysdeps/x86_64/fpu/multiarch/e_exp2f.c +++ b/sysdeps/x86_64/fpu/multiarch/e_exp2f.c @@ -16,6 +16,8 @@ License along with the GNU C Library; if not, see . */ +#include + extern float __redirect_exp2f (float); #define SYMBOL_NAME exp2f @@ -26,8 +28,9 @@ libc_ifunc_redirected (__redirect_exp2f, __exp2f, IFUNC_SELECTOR ()); #ifdef SHARED # include versioned_symbol (libm, __exp2f, exp2f, GLIBC_2_27); +libm_alias_float_other (__exp2, exp2) #else -weak_alias (__exp2f, exp2f) +libm_alias_float (__exp2, exp2) #endif strong_alias (__exp2f, __ieee754_exp2f) -- cgit 1.4.1