]> git.ipfire.org Git - thirdparty/glibc.git/commit
Use libm_alias_ldouble for ldbl-128 functions.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 6 Oct 2017 17:45:05 +0000 (17:45 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 6 Oct 2017 17:45:05 +0000 (17:45 +0000)
commitfd3b4e7c8a0b492fe39243893803f4d9f84e30af
treee0bc7581b10ba2113b41b123882b1e1534697d65
parent1e26d35193efbb29239c710a4c46a64708643320
Use libm_alias_ldouble for ldbl-128 functions.

This patch makes ldbl-128 functions use libm_alias_ldouble to define
function aliases.  float128_private.h is updated accordingly.  Most of
the ldbl-64-128 wrappers are removed as no longer needed with this
change (leaving those that involve versioning for functions in libc or
that shouldn't be exported from libm for _Float128 / _Float64x types
with the same format as long double).

Tested for x86_64, and tested with build-many-glibcs.py that installed
stripped shared libraries are unchanged by this patch.

* sysdeps/ieee754/float128/float128_private.h: Include
<libm-alias-ldouble.h> and <libm-alias-float128.h>.
(libm_alias_ldouble_r): Undefine and redefine.
* sysdeps/ieee754/ldbl-128/s_asinhl.c: Include
<libm-alias-ldouble.h>.
(asinhl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_atanl.c: Include
<libm-alias-ldouble.h>.
(atanl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_cbrtl.c: Include
<libm-alias-ldouble.h>.
(cbrtl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_ceill.c: Include
<libm-alias-ldouble.h>.
(ceill): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_copysignl.c: Include
<libm-alias-ldouble.h>.
(copysignl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_cosl.c: Include
<libm-alias-ldouble.h>.
(cosl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_erfl.c: Include
<libm-alias-ldouble.h>.
(erfl): Define using libm_alias_ldouble.
(erfcl): Likewise.
* sysdeps/ieee754/ldbl-128/s_expm1l.c: Include
<libm-alias-ldouble.h>.
(expm1l): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fabsl.c: Include
<libm-alias-ldouble.h>.
(fabsl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_floorl.c: Include
<libm-alias-ldouble.h>.
(floorl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fmal.c: Include
<libm-alias-ldouble.h>.
(fmal): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_frexpl.c: Include
<libm-alias-ldouble.h>.
(frexpl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fromfpl.c (fromfpl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fromfpl_main.c: Include
<libm-alias-ldouble.h>.
* sysdeps/ieee754/ldbl-128/s_fromfpxl.c (fromfpxl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_getpayloadl.c: Include
<libm-alias-ldouble.h>.
(getpayloadl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_llrintl.c: Include
<libm-alias-ldouble.h>.
(llrintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_llroundl.c: Include
<libm-alias-ldouble.h>.
(llroundl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_logbl.c: Include
<libm-alias-ldouble.h>.
(logbl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_lrintl.c: Include
<libm-alias-ldouble.h>.
(lrintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_lroundl.c: Include
<libm-alias-ldouble.h>.
(lroundl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_modfl.c: Include
<libm-alias-ldouble.h>.
(modfl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Include
<libm-alias-ldouble.h>.
(nearbyintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_nextafterl.c: Include
<libm-alias-ldouble.h>.
(nextafterl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_nextupl.c: Include
<libm-alias-ldouble.h>.
(nextupl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_remquol.c: Include
<libm-alias-ldouble.h>.
(remquol): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_rintl.c: Include
<libm-alias-ldouble.h>.
(rintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_roundevenl.c: Include
<libm-alias-ldouble.h>.
(roundevenl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_roundl.c: Include
<libm-alias-ldouble.h>.
(roundl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_setpayloadl.c (setpayloadl): Define
using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_setpayloadl_main.c: Include
<libm-alias-ldouble.h>.
* sysdeps/ieee754/ldbl-128/s_setpayloadsigl.c (setpayloadsigl):
Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_sincosl.c: Include
<libm-alias-ldouble.h>.
(sincosl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_sinl.c: Include
<libm-alias-ldouble.h>.
(sinl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_tanhl.c: Include
<libm-alias-ldouble.h>.
(tanhl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_tanl.c: Include
<libm-alias-ldouble.h>.
(tanl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_totalorderl.c: Include
<libm-alias-ldouble.h>.
(totalorderl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_totalordermagl.c: Include
<libm-alias-ldouble.h>.
(totalordermagl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_truncl.c: Include
<libm-alias-ldouble.h>.
(truncl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_ufromfpl.c (ufromfpl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_ufromfpxl.c (ufromfpxl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-64-128/s_copysignl.c: Include
<libm-alias-ldouble.h>.
(weak_alias): Do not undefine and redefine.
[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
(copysignl): Define with long_double_symbol only if [IS_IN
(libc)].
* sysdeps/ieee754/ldbl-64-128/s_frexpl.c: Include
<libm-alias-ldouble.h>.
(weak_alias): Do not undefine and redefine.
[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
(frexpl): Define with long_double_symbol only if [IS_IN (libc)].
* sysdeps/ieee754/ldbl-64-128/s_modfl.c: Include
<libm-alias-ldouble.h>.
(weak_alias): Do not undefine and redefine.
[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
(modfl): Define with long_double_symbol only if [IS_IN (libc)].
* sysdeps/ieee754/ldbl-64-128/s_asinhl.c: Remove file.
* sysdeps/ieee754/ldbl-64-128/s_atanl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_cbrtl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_ceill.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_cosl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_erfl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_expm1l.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_fabsl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_floorl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_fmal.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_llrintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_llroundl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_logbl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_lrintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_lroundl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_nearbyintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_remquol.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_rintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_roundl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_sincosl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_sinl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_tanhl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_tanl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_truncl.c: Likewise.
70 files changed:
ChangeLog
sysdeps/ieee754/float128/float128_private.h
sysdeps/ieee754/ldbl-128/s_asinhl.c
sysdeps/ieee754/ldbl-128/s_atanl.c
sysdeps/ieee754/ldbl-128/s_cbrtl.c
sysdeps/ieee754/ldbl-128/s_ceill.c
sysdeps/ieee754/ldbl-128/s_copysignl.c
sysdeps/ieee754/ldbl-128/s_cosl.c
sysdeps/ieee754/ldbl-128/s_erfl.c
sysdeps/ieee754/ldbl-128/s_expm1l.c
sysdeps/ieee754/ldbl-128/s_fabsl.c
sysdeps/ieee754/ldbl-128/s_floorl.c
sysdeps/ieee754/ldbl-128/s_fmal.c
sysdeps/ieee754/ldbl-128/s_frexpl.c
sysdeps/ieee754/ldbl-128/s_fromfpl.c
sysdeps/ieee754/ldbl-128/s_fromfpl_main.c
sysdeps/ieee754/ldbl-128/s_fromfpxl.c
sysdeps/ieee754/ldbl-128/s_getpayloadl.c
sysdeps/ieee754/ldbl-128/s_llrintl.c
sysdeps/ieee754/ldbl-128/s_llroundl.c
sysdeps/ieee754/ldbl-128/s_logbl.c
sysdeps/ieee754/ldbl-128/s_lrintl.c
sysdeps/ieee754/ldbl-128/s_lroundl.c
sysdeps/ieee754/ldbl-128/s_modfl.c
sysdeps/ieee754/ldbl-128/s_nearbyintl.c
sysdeps/ieee754/ldbl-128/s_nextafterl.c
sysdeps/ieee754/ldbl-128/s_nextupl.c
sysdeps/ieee754/ldbl-128/s_remquol.c
sysdeps/ieee754/ldbl-128/s_rintl.c
sysdeps/ieee754/ldbl-128/s_roundevenl.c
sysdeps/ieee754/ldbl-128/s_roundl.c
sysdeps/ieee754/ldbl-128/s_setpayloadl.c
sysdeps/ieee754/ldbl-128/s_setpayloadl_main.c
sysdeps/ieee754/ldbl-128/s_setpayloadsigl.c
sysdeps/ieee754/ldbl-128/s_sincosl.c
sysdeps/ieee754/ldbl-128/s_sinl.c
sysdeps/ieee754/ldbl-128/s_tanhl.c
sysdeps/ieee754/ldbl-128/s_tanl.c
sysdeps/ieee754/ldbl-128/s_totalorderl.c
sysdeps/ieee754/ldbl-128/s_totalordermagl.c
sysdeps/ieee754/ldbl-128/s_truncl.c
sysdeps/ieee754/ldbl-128/s_ufromfpl.c
sysdeps/ieee754/ldbl-128/s_ufromfpxl.c
sysdeps/ieee754/ldbl-64-128/s_asinhl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_atanl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_cbrtl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_ceill.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_copysignl.c
sysdeps/ieee754/ldbl-64-128/s_cosl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_erfl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_expm1l.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_fabsl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_floorl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_fmal.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_frexpl.c
sysdeps/ieee754/ldbl-64-128/s_llrintl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_llroundl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_logbl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_lrintl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_lroundl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_modfl.c
sysdeps/ieee754/ldbl-64-128/s_nearbyintl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_remquol.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_rintl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_roundl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_sincosl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_sinl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_tanhl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_tanl.c [deleted file]
sysdeps/ieee754/ldbl-64-128/s_truncl.c [deleted file]