diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-12-01 23:09:47 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-12-01 23:09:47 +0000 |
commit | 51ea3b2042ae5012c8e93142baf2e4e84909ff5f (patch) | |
tree | 335c4c7454117833e7bfce066aedb0f5008b43d0 /sysdeps/powerpc/powerpc64 | |
parent | ec2cf3f4445af7d729308350edf1e890eeebdd1d (diff) | |
download | glibc-51ea3b2042ae5012c8e93142baf2e4e84909ff5f.tar.gz glibc-51ea3b2042ae5012c8e93142baf2e4e84909ff5f.tar.xz glibc-51ea3b2042ae5012c8e93142baf2e4e84909ff5f.zip |
Ues libm_alias_double for various powerpc functions.
Continuing the preparation for additional _FloatN / _FloatNx function aliases, this patch various powerpc functions use libm_alias_double to define function aliases (with consequent removal of the need for local compat symbol handling). (The present patch excludes the changes to some functions where such changes could result in differences in installed stripped shared libraries because of changes to the exact ordering or properties of symbols in individual .os files.) Tested with build-many-glibcs.py that installed stripped shared libraries are unchanged for all its hard-float powerpc configurations. * sysdeps/powerpc/fpu/s_rint.c: Include <libm-alias-double.h>. (rint): Define using libm_alias_double. * sysdeps/powerpc/power5+/fpu/s_modf.c: Include <libm-alias-double.h>. (modf): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_nearbyint.S: Include <libm-alias-double.h>. (nearbyint): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Include <libm-alias-double.h>. (rint): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_round.S: Include <libm-alias-double.h>. (round): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c: Include <libm-alias-double.h>. (modf): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c: Include <libm-alias-double.h>. (round): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: Include <libm-alias-double.h>. (round): Define using libm_alias_double. * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c: Include <libm-alias-double.h>. (modf): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c: Include <libm-alias-double.h>. (round): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/s_ceil.S: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/s_floor.S: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S: Include <libm-alias-double.h>. (nearbyint): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/s_rint.S: Include <libm-alias-double.h>. (rint): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/s_round.S: Include <libm-alias-double.h>. (round): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/fpu/s_trunc.S: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: Include <libm-alias-double.h>. (ceil): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: Include <libm-alias-double.h>. (floor): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: Include <libm-alias-double.h>. (round): Define using libm_alias_double. * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: Include <libm-alias-double.h>. (trunc): Define using libm_alias_double.
Diffstat (limited to 'sysdeps/powerpc/powerpc64')
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c | 13 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/s_ceil.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/s_floor.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/s_rint.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/s_round.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/fpu/s_trunc.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S | 11 | ||||
-rw-r--r-- | sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S | 11 |
15 files changed, 31 insertions, 136 deletions
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c index 968e8cb17e..611c22f40d 100644 --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c @@ -20,6 +20,7 @@ #include <math_ldbl_opt.h> #include <shlib-compat.h> #include "init-arch.h" +#include <libm-alias-double.h> extern __typeof (__ceil) __ceil_ppc64 attribute_hidden; extern __typeof (__ceil) __ceil_power5plus attribute_hidden; @@ -29,12 +30,4 @@ libc_ifunc (__ceil, ? __ceil_power5plus : __ceil_ppc64); -weak_alias (__ceil, ceil) - -#ifdef NO_LONG_DOUBLE -strong_alias (__ceil, __ceill) -weak_alias (__ceil, ceill) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __ceil, ceill, GLIBC_2_0); -#endif +libm_alias_double (__ceil, ceil) diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c index 6ab7a35490..5154ba40f9 100644 --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c @@ -20,6 +20,7 @@ #include <math_ldbl_opt.h> #include <shlib-compat.h> #include "init-arch.h" +#include <libm-alias-double.h> extern __typeof (__floor) __floor_ppc64 attribute_hidden; extern __typeof (__floor) __floor_power5plus attribute_hidden; @@ -29,12 +30,4 @@ libc_ifunc (__floor, ? __floor_power5plus : __floor_ppc64); -weak_alias (__floor, floor) - -#ifdef NO_LONG_DOUBLE -strong_alias (__floor, __floorl) -weak_alias (__floor, floorl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __floor, floorl, GLIBC_2_0); -#endif +libm_alias_double (__floor, floor) diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c index 3e79b2bd5a..104ada21f5 100644 --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c @@ -20,6 +20,7 @@ #include <math_ldbl_opt.h> #include <shlib-compat.h> #include "init-arch.h" +#include <libm-alias-double.h> extern __typeof (__modf) __modf_ppc64 attribute_hidden; extern __typeof (__modf) __modf_power5plus attribute_hidden; @@ -29,16 +30,8 @@ libc_ifunc (__modf, ? __modf_power5plus : __modf_ppc64); -weak_alias (__modf, modf) +libm_alias_double (__modf, modf) -#ifdef NO_LONG_DOUBLE -strong_alias (__modf, __modfl) -weak_alias (__modf, modfl) -#endif -#if IS_IN (libm) -# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __modf, modfl, GLIBC_2_0); -# endif -#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0) +#if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0) compat_symbol (libc, __modf, modfl, GLIBC_2_0); #endif diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c index d440f6f45c..7bf5ab627e 100644 --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c @@ -20,6 +20,7 @@ #include <math_ldbl_opt.h> #include <shlib-compat.h> #include "init-arch.h" +#include <libm-alias-double.h> extern __typeof (__round) __round_ppc64 attribute_hidden; extern __typeof (__round) __round_power5plus attribute_hidden; @@ -29,12 +30,4 @@ libc_ifunc (__round, ? __round_power5plus : __round_ppc64); -weak_alias (__round, round) - -#ifdef NO_LONG_DOUBLE -strong_alias (__round, __roundl) -weak_alias (__round, roundl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __round, roundl, GLIBC_2_0); -#endif +libm_alias_double (__round, round) diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c index 54844d5ff2..c2b430fec8 100644 --- a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c +++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c @@ -20,6 +20,7 @@ #include <math_ldbl_opt.h> #include <shlib-compat.h> #include "init-arch.h" +#include <libm-alias-double.h> extern __typeof (__trunc) __trunc_ppc64 attribute_hidden; extern __typeof (__trunc) __trunc_power5plus attribute_hidden; @@ -29,12 +30,4 @@ libc_ifunc (__trunc, ? __trunc_power5plus : __trunc_ppc64); -weak_alias (__trunc, trunc) - -#ifdef NO_LONG_DOUBLE -strong_alias (__trunc, __truncl) -weak_alias (__trunc, truncl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __trunc, truncl, GLIBC_2_0); -#endif +libm_alias_double (__trunc, trunc) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_ceil.S b/sysdeps/powerpc/powerpc64/fpu/s_ceil.S index ce673e51f0..46a923b26c 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_ceil.S +++ b/sysdeps/powerpc/powerpc64/fpu/s_ceil.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .section ".toc","aw" .LC0: /* 2**52 */ @@ -61,12 +62,4 @@ ENTRY (__ceil, 4) blr END (__ceil) -weak_alias (__ceil, ceil) - -#ifdef NO_LONG_DOUBLE -weak_alias (__ceil, ceill) -strong_alias (__ceil, __ceill) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __ceil, ceill, GLIBC_2_0) -#endif +libm_alias_double (__ceil, ceil) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_floor.S b/sysdeps/powerpc/powerpc64/fpu/s_floor.S index 23cea2ab5a..af0769c957 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_floor.S +++ b/sysdeps/powerpc/powerpc64/fpu/s_floor.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .section ".toc","aw" .LC0: /* 2**52 */ @@ -61,12 +62,4 @@ ENTRY (__floor, 4) blr END (__floor) -weak_alias (__floor, floor) - -#ifdef NO_LONG_DOUBLE -weak_alias (__floor, floorl) -strong_alias (__floor, __floorl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __floor, floorl, GLIBC_2_0) -#endif +libm_alias_double (__floor, floor) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S b/sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S index 88ec253ced..22810803cc 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S +++ b/sysdeps/powerpc/powerpc64/fpu/s_nearbyint.S @@ -22,6 +22,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> /* double [fp1] nearbyint(double [fp1] x) */ @@ -64,12 +65,4 @@ L(lessthanzero): blr END (__nearbyint) -weak_alias (__nearbyint, nearbyint) - -#ifdef NO_LONG_DOUBLE -weak_alias (__nearbyint, nearbyint) -strong_alias (__nearbyint, __nearbyintl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __nearbyint, nearbyintl, GLIBC_2_1) -#endif +libm_alias_double (__nearbyint, nearbyint) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_rint.S b/sysdeps/powerpc/powerpc64/fpu/s_rint.S index 3543279ed4..a4506061eb 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_rint.S +++ b/sysdeps/powerpc/powerpc64/fpu/s_rint.S @@ -21,6 +21,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .section ".toc","aw" .LC0: /* 2**52 */ @@ -54,12 +55,4 @@ ENTRY (__rint, 4) blr END (__rint) -weak_alias (__rint, rint) - -#ifdef NO_LONG_DOUBLE -weak_alias (__rint, rintl) -strong_alias (__rint, __rintl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __rint, rintl, GLIBC_2_0) -#endif +libm_alias_double (__rint, rint) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_round.S b/sysdeps/powerpc/powerpc64/fpu/s_round.S index d10c74d037..975c10f71e 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_round.S +++ b/sysdeps/powerpc/powerpc64/fpu/s_round.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .section ".toc","aw" .LC0: /* 2**52 */ @@ -76,12 +77,4 @@ ENTRY (__round, 4) blr END (__round) -weak_alias (__round, round) - -#ifdef NO_LONG_DOUBLE -weak_alias (__round, roundl) -strong_alias (__round, __roundl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __round, roundl, GLIBC_2_1) -#endif +libm_alias_double (__round, round) diff --git a/sysdeps/powerpc/powerpc64/fpu/s_trunc.S b/sysdeps/powerpc/powerpc64/fpu/s_trunc.S index 1e356dee7d..f918293ce5 100644 --- a/sysdeps/powerpc/powerpc64/fpu/s_trunc.S +++ b/sysdeps/powerpc/powerpc64/fpu/s_trunc.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .section ".toc","aw" .LC0: /* 2**52 */ @@ -68,12 +69,4 @@ ENTRY (__trunc, 4) blr END (__trunc) -weak_alias (__trunc, trunc) - -#ifdef NO_LONG_DOUBLE -weak_alias (__trunc, truncl) -strong_alias (__trunc, __truncl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __trunc, truncl, GLIBC_2_1) -#endif +libm_alias_double (__trunc, trunc) diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S b/sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S index 0d09e56e4e..bc666317b6 100644 --- a/sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S +++ b/sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .machine "power5" ENTRY_TOCLESS (__ceil, 4) @@ -26,12 +27,4 @@ ENTRY_TOCLESS (__ceil, 4) blr END (__ceil) -weak_alias (__ceil, ceil) - -#ifdef NO_LONG_DOUBLE -weak_alias (__ceil, ceill) -strong_alias (__ceil, __ceill) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __ceil, ceill, GLIBC_2_0) -#endif +libm_alias_double (__ceil, ceil) diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S b/sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S index f8bfb2797e..c589185a64 100644 --- a/sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S +++ b/sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .machine "power5" ENTRY_TOCLESS (__floor, 4) @@ -26,12 +27,4 @@ ENTRY_TOCLESS (__floor, 4) blr END (__floor) -weak_alias (__floor, floor) - -#ifdef NO_LONG_DOUBLE -weak_alias (__floor, floorl) -strong_alias (__floor, __floorl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0) -compat_symbol (libm, __floor, floorl, GLIBC_2_0) -#endif +libm_alias_double (__floor, floor) diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S b/sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S index 0a124c80a6..d5b11f2435 100644 --- a/sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S +++ b/sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .machine "power5" ENTRY_TOCLESS (__round, 4) @@ -26,12 +27,4 @@ ENTRY_TOCLESS (__round, 4) blr END (__round) -weak_alias (__round, round) - -#ifdef NO_LONG_DOUBLE -weak_alias (__round, roundl) -strong_alias (__round, __roundl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __round, roundl, GLIBC_2_1) -#endif +libm_alias_double (__round, round) diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S b/sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S index 5fca9f37fa..dee61dd51c 100644 --- a/sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S +++ b/sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S @@ -18,6 +18,7 @@ #include <sysdep.h> #include <math_ldbl_opt.h> +#include <libm-alias-double.h> .machine "power5" ENTRY_TOCLESS (__trunc, 4) @@ -26,12 +27,4 @@ ENTRY_TOCLESS (__trunc, 4) blr END (__trunc) -weak_alias (__trunc, trunc) - -#ifdef NO_LONG_DOUBLE -weak_alias (__trunc, truncl) -strong_alias (__trunc, __truncl) -#endif -#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1) -compat_symbol (libm, __trunc, truncl, GLIBC_2_1) -#endif +libm_alias_double (__trunc, trunc) |