From a1132b5e56fe8aaa148ebd249034181863857d60 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 3 Oct 2017 17:47:35 +0000 Subject: Use libm_alias_double for more dbl-64 functions. This patch makes more dbl-64 functions use libm_alias_double to define function aliases. Specifically, it makes the change for functions with dbl-64/wordsize-64 versions, changing both the dbl-64 and dbl-64/wordsize-64 versions and removing the ldbl-opt wrappers. Functions are excluded from this patch if there are complications because of versions of those functions also present in libc, or architecture-specific wrappers round these files. Tested for x86_64, and with build-many-glibcs.py. Installed stripped shared libraries are unchanged except for alpha (where increased use of dbl-64/wordsize-64 files, where previously ldbl-opt files that wrapped dbl-64 files were used, was expected to result in different, better code). * sysdeps/ieee754/dbl-64/s_ceil.c: Include . (ceil): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_floor.c: Include . (floor): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_llround.c: Include . (llround): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_lround.c: Include . (lround): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_nearbyint.c: Include . (nearbyint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_remquo.c: Include . (remquo): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_rint.c: Include . (rint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_round.c: Include . (round): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/s_trunc.c: Include . (trunc): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: Include . (ceil): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c: Include . (floor): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c: Include . (llround): Define using libm_alias_double. [_LP64] (lround): Likewise. * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Include . [!_LP64] (lround): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: Include . (nearbyint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_remquo.c: Include . (remquo): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: Include . (rint): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: Include . (round): Define using libm_alias_double. * sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: Include . (trunc): Define using libm_alias_double. * sysdeps/ieee754/ldbl-opt/s_ceil.c: Remove file. * sysdeps/ieee754/ldbl-opt/s_floor.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_llround.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_lround.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_nearbyint.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_remquo.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_rint.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_round.c: Likewise. * sysdeps/ieee754/ldbl-opt/s_trunc.c: Likewise. --- sysdeps/ieee754/dbl-64/s_rint.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'sysdeps/ieee754/dbl-64/s_rint.c') diff --git a/sysdeps/ieee754/dbl-64/s_rint.c b/sysdeps/ieee754/dbl-64/s_rint.c index a9c0d27842..cb0f5ca298 100644 --- a/sysdeps/ieee754/dbl-64/s_rint.c +++ b/sysdeps/ieee754/dbl-64/s_rint.c @@ -22,6 +22,7 @@ #include #include +#include static const double TWO52[2] = { @@ -59,9 +60,5 @@ __rint (double x) return w - TWO52[sx]; } #ifndef __rint -weak_alias (__rint, rint) -# ifdef NO_LONG_DOUBLE -strong_alias (__rint, __rintl) -weak_alias (__rint, rintl) -# endif +libm_alias_double (__rint, rint) #endif -- cgit 1.4.1