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/wordsize-64/s_nearbyint.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c') diff --git a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c index 7d135b54e4..5d1f98e471 100644 --- a/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c +++ b/sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c @@ -23,6 +23,7 @@ #include #include #include +#include static const double TWO52[2]={ @@ -59,8 +60,4 @@ __nearbyint(double x) libc_fesetenv (&env); return t; } -weak_alias (__nearbyint, nearbyint) -#ifdef NO_LONG_DOUBLE -strong_alias (__nearbyint, __nearbyintl) -weak_alias (__nearbyint, nearbyintl) -#endif +libm_alias_double (__nearbyint, nearbyint) -- cgit 1.4.1