glibc/sysdeps/ieee754/ldbl-128ibm
Paul E. Murphy 45ae17dd7e ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally
Tweak the PLT bypass magic when building glibc with long double
redirects.  This is made more difficult by the fact we only get
one chance to redirect functions.  This happens via the public
headers.

There are roughly three classes of redirect we need to attend to
today:

 1. Simple redirects, redirected via cdef macro overrides and
    and new libc_hidden_ldbl_proto macro.
 2. Internal usage of internal API, e.g __snprintf, which has
    no direct analogue.  This is bypassed directly on case-by-
    case basis.
 3. Double redirects, e.g sscanf and related.  These require
    a heavier handed approach of macro renaming to existing
    symbols.

Most simple redirects are handled via 1.  Ideally, the libc_*
macro would live in libc-symbols.h, but in practice the macros
needed for it to do anything useful live in cdefs.h, so they
are defined in the local override.

Notably, the internal name of the asprintf generated for ieee ldbl
redirects is renamed to work with internal prefixed usage.

This resolves the local plt usage introduced when building glibc
with ldbl == ieee128 on ppc64le.

Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
2020-03-25 14:34:23 -05:00
..
bits ldbl-128ibm-compat: Redirect long double functions to f128/ieee128 functions 2020-02-28 08:20:02 -06:00
include/bits ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
e_acoshl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_acosl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_asinl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_atan2l.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_atanhl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_coshl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_exp10l.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_expl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_fmodl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_gammal_r.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_hypotl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_ilogbl.c Fix ldbl-128ibm ilogbl near powers of 2 (bug 18029). 2015-02-26 12:57:21 +00:00
e_j0l.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_j1l.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_jnl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_lgammal_r.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_log2l.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_log10l.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_logl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_powl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_rem_pio2l.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
e_remainderl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_sinhl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
e_sqrtl.c Add libm_alias_finite for _finite symbols 2020-01-03 10:02:04 -03:00
gamma_productl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee754.h ldbl-128ibm: make ieee754.h work with IEEE 128 long double 2020-02-21 08:24:36 -06:00
k_cosl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
k_sincosl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
k_sinl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
k_tanl.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
ldbl2mpn.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
lgamma_negl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
lgamma_productl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Makefile ldbl-128ibm: Let long double files have specific compiler flags 2020-03-06 09:17:32 -06:00
math_ldbl.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
math-nan-payload-ldouble.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
mpn2ldbl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
printf_fphex.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_asinhl.c Move math_check_force_underflow macros to separate math-underflow.h. 2018-05-10 00:53:04 +00:00
s_atanl.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
s_cbrtl.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
s_ceill.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_copysignl.c Remove unnecessary math_private.h includes. 2018-09-28 21:53:33 +00:00
s_cosl.c PowerPC floating point little-endian [2 of 15] 2013-10-04 10:32:19 +09:30
s_daddl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_ddivl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_dmull.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_dsubl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_erfl.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
s_expm1l.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
s_fabsl.c Consistently use uintN_t not u_intN_t in libm. 2017-08-03 19:55:04 +00:00
s_faddl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_fdivl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_finitel.c Reduce number of constants in __finite* (bug 15384). 2015-09-17 16:47:14 +00:00
s_floorl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_fmal.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_fmull.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_fpclassifyl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_frexpl.c Fix frexp (NaN) (bug 20250). 2016-06-13 17:27:19 +00:00
s_fromfpl_main.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_fromfpl.c Make more libm functions into weak aliases. 2017-09-14 22:28:53 +00:00
s_fromfpxl.c Make more libm functions into weak aliases. 2017-09-14 22:28:53 +00:00
s_fsubl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_getpayloadl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_iscanonicall.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_isinfl.c Remove IS_IN_libm 2014-11-24 11:41:47 +05:30
s_isnanl.c Remove IS_IN_libm 2014-11-24 11:41:47 +05:30
s_issignalingl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_llrintl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_llroundl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_log1pl.c Prefer https to http for gnu.org and fsf.org URLs 2019-09-07 02:43:31 -07:00
s_logbl.c Work around powerpc32 integer 0 converting to -0 (bug 887, bug 19049, bug 19050). 2015-10-05 17:46:50 +00:00
s_lrintl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_lroundl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_modfl.c Consistently use uintN_t not u_intN_t in libm. 2017-08-03 19:55:04 +00:00
s_nearbyintl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_nextafterl.c Do not include math-barriers.h in math_private.h. 2018-05-11 15:11:38 +00:00
s_nexttoward.c Do not include math-barriers.h in math_private.h. 2018-05-11 15:11:38 +00:00
s_nexttowardf.c Do not include math-barriers.h in math_private.h. 2018-05-11 15:11:38 +00:00
s_nextupl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_remquol.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_rintl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_roundevenl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_roundl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_scalblnl.c Use copysign functions not __copysign functions in glibc libm. 2018-09-27 20:04:48 +00:00
s_scalbnl.c Use copysign functions not __copysign functions in glibc libm. 2018-09-27 20:04:48 +00:00
s_setpayloadl_main.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_setpayloadl.c Make more libm functions into weak aliases. 2017-09-14 22:28:53 +00:00
s_setpayloadsigl.c Make more libm functions into weak aliases. 2017-09-14 22:28:53 +00:00
s_signbitl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_sincosl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_sinl.c PowerPC floating point little-endian [2 of 15] 2013-10-04 10:32:19 +09:30
s_tanhl.c Move math_check_force_underflow macros to separate math-underflow.h. 2018-05-10 00:53:04 +00:00
s_tanl.c PowerPC floating point little-endian [2 of 15] 2013-10-04 10:32:19 +09:30
s_totalorderl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_totalordermagl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_truncl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
s_ufromfpl.c Make more libm functions into weak aliases. 2017-09-14 22:28:53 +00:00
s_ufromfpxl.c Make more libm functions into weak aliases. 2017-09-14 22:28:53 +00:00
strtold_l.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
t_expl.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
t_sincosl.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-canonical-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-fmodl-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-fmodrem-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-remainderl-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-remquol-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-totalorderl-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
tst-strtold-ldbl-128ibm.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
x2y2m1l.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00