glibc/sysdeps/ieee754/ldbl-128ibm-compat
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 Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
e_scalbf128.c ldbl-128ibm-compat: Provide a scalb implementation 2020-02-14 08:24:56 -06:00
ieee128-argp-help.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-asprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-asprintf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-dprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-dprintf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-err.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-error.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-fprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-fprintf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-fscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-fwprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-fwprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-fwscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_fscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_fwscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_scanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_sscanf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-isoc99_swscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_vfscanf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-isoc99_vfwscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_vscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_vsscanf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-isoc99_vswscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_vwscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-isoc99_wscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-obprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-obstack_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-printf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-printf_size.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-printf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-qefgcvt_r.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-qefgcvt.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-scanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-snprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-snprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-sprintf_chk.c ldbl-128ibm-compat: set PRINTF_CHK flag in {,v}sprintf_chk 2020-02-10 16:51:03 -06:00
ieee128-sprintf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-sscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-strfmon_l.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-strfmon.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-swprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-swprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-swscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-syslog.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-vasprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vasprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vdprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vdprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vfprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vfprintf.c ldbl-128ibm-compat: PLT redirects for using ldbl redirects internally 2020-03-25 14:34:23 -05:00
ieee128-vfscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vfwprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vfwprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vfwscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vobstack_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vsnprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vsnprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vsprintf_chk.c ldbl-128ibm-compat: set PRINTF_CHK flag in {,v}sprintf_chk 2020-02-10 16:51:03 -06:00
ieee128-vsprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vsscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vswprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vswprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vswscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vwprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vwprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-vwscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-wprintf_chk.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-wprintf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
ieee128-wscanf.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
libm-alias-float128.h Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
Makeconfig ldbl-128ibm-compat: Add tests for IBM long double functions 2020-03-06 09:17:32 -06:00
Makefile math: Remove inline math tests 2020-03-19 11:45:44 -03:00
math_ldbl.h ldbl-128ibm: make ieee754.h work with IEEE 128 long double 2020-02-21 08:24:36 -06:00
math-narrow-alias-float128.h ldbl-128ibm-compat: Provide ieee128 symbols to narrow functions 2020-02-20 17:12:14 -06:00
s_nextafterf128.c ldbl-128ibm-compat: Provide nexttoward functions 2020-02-28 08:20:02 -06:00
s_nexttowardf128.c ldbl-128ibm-compat: Provide nexttoward functions 2020-02-28 08:20:02 -06:00
s_significandf128.c ldbl-128ibm-compat: Provide a significand implementation 2020-02-28 08:20:02 -06:00
strfromf128.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
strtof128_l.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
strtof128.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-isoc99-scanf-ibm128.c ldbl-128ibm-compat: Add ISO C99 versions of scanf functions 2019-12-13 18:02:09 -03:00
test-isoc99-scanf-ieee128.c ldbl-128ibm-compat: Add ISO C99 versions of scanf functions 2019-12-13 18:02:09 -03:00
test-isoc99-wscanf-ibm128.c ldbl-128ibm-compat: Add ISO C99 versions of scanf functions 2019-12-13 18:02:09 -03:00
test-isoc99-wscanf-ieee128.c ldbl-128ibm-compat: Add ISO C99 versions of scanf functions 2019-12-13 18:02:09 -03:00
test-obstack-chk-ibm128.c ldbl-128ibm-compat: Add obstack printing functions 2019-11-27 15:52:41 -03:00
test-obstack-chk-ieee128.c ldbl-128ibm-compat: Add obstack printing functions 2019-11-27 15:52:41 -03:00
test-obstack-chk-ldbl-compat.c ldbl-128ibm-compat: Add obstack printing functions 2019-11-27 15:52:41 -03:00
test-obstack-ibm128.c ldbl-128ibm-compat: Add obstack printing functions 2019-11-27 15:52:41 -03:00
test-obstack-ieee128.c ldbl-128ibm-compat: Add obstack printing functions 2019-11-27 15:52:41 -03:00
test-obstack-ldbl-compat-template.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-obstack-ldbl-compat.c ldbl-128ibm-compat: Add obstack printing functions 2019-11-27 15:52:41 -03:00
test-printf-chk-ibm128.c ldbl-128ibm-compat: Add regular character, fortified printing functions 2019-11-22 18:11:49 -03:00
test-printf-chk-ieee128.c ldbl-128ibm-compat: Add regular character, fortified printing functions 2019-11-22 18:11:49 -03:00
test-printf-chk-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-printf-chk-redir-ibm128.c ldbl-128ibm-compat: Add regular character, fortified printing functions 2019-11-22 18:11:49 -03:00
test-printf-chk-redir-ieee128.c ldbl-128ibm-compat: Add regular character, fortified printing functions 2019-11-22 18:11:49 -03:00
test-printf-ibm128.c ldbl-128ibm-compat: Add regular character printing functions 2019-11-22 18:10:52 -03:00
test-printf-ieee128.c ldbl-128ibm-compat: Add regular character printing functions 2019-11-22 18:10:52 -03:00
test-printf-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-printf-size-ibm128.c ldbl-128ibm-compat: Add printf_size 2018-07-02 10:51:01 -03:00
test-printf-size-ieee128.c ldbl-128ibm-compat: Add printf_size 2018-07-02 10:51:01 -03:00
test-scanf-ibm128.c ldbl-128ibm-compat: Add regular character scanning functions 2019-11-22 18:13:01 -03:00
test-scanf-ieee128.c ldbl-128ibm-compat: Add regular character scanning functions 2019-11-22 18:13:01 -03:00
test-scanf-ldbl-compat-template.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-scanf-ldbl-compat.c ldbl-128ibm-compat: Add ISO C99 versions of scanf functions 2019-12-13 18:02:09 -03:00
test-scanf-ldbl-compat.sh Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-strfmon-ibm128.c ldbl-128ibm-compat: Add tests for strfmon and strfmon_l 2019-12-03 13:30:42 -03:00
test-strfmon-ieee128.c ldbl-128ibm-compat: Add tests for strfmon and strfmon_l 2019-12-03 13:30:42 -03:00
test-strfmon-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-strfrom-ibm128.c ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold 2019-12-03 13:30:42 -03:00
test-strfrom-ieee128.c ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold 2019-12-03 13:30:42 -03:00
test-strfrom-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-syslog-chk-ibm128.c ldbl-128ibm-compat: Add syslog functions 2019-11-27 15:52:41 -03:00
test-syslog-chk-ieee128.c ldbl-128ibm-compat: Add syslog functions 2019-11-27 15:52:41 -03:00
test-syslog-chk-ldbl-compat.c ldbl-128ibm-compat: Add syslog functions 2019-11-27 15:52:41 -03:00
test-syslog-ibm128.c ldbl-128ibm-compat: Add syslog functions 2019-11-27 15:52:41 -03:00
test-syslog-ieee128.c ldbl-128ibm-compat: Add syslog functions 2019-11-27 15:52:41 -03:00
test-syslog-ldbl-compat-template.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-syslog-ldbl-compat.c ldbl-128ibm-compat: Add syslog functions 2019-11-27 15:52:41 -03:00
test-wcstold-ibm128.c ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold 2019-12-03 13:30:42 -03:00
test-wcstold-ieee128.c ldbl-128ibm-compat: Add tests for strfroml, strtold, and wcstold 2019-12-03 13:30:42 -03:00
test-wcstold-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-wprintf-chk-ibm128.c ldbl-128ibm-compat: Add wide character, fortified printing functions 2019-11-22 18:12:27 -03:00
test-wprintf-chk-ieee128.c ldbl-128ibm-compat: Add wide character, fortified printing functions 2019-11-22 18:12:27 -03:00
test-wprintf-chk-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-wprintf-chk-redir-ibm128.c ldbl-128ibm-compat: Add wide character, fortified printing functions 2019-11-22 18:12:27 -03:00
test-wprintf-chk-redir-ieee128.c ldbl-128ibm-compat: Add wide character, fortified printing functions 2019-11-22 18:12:27 -03:00
test-wprintf-ibm128.c ldbl-128ibm-compat: Add wide character printing functions 2019-11-22 18:11:38 -03:00
test-wprintf-ieee128.c ldbl-128ibm-compat: Add wide character printing functions 2019-11-22 18:11:38 -03:00
test-wprintf-ldbl-compat.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
test-wscanf-ibm128.c ldbl-128ibm-compat: Add wide character scanning functions 2019-11-22 18:13:20 -03:00
test-wscanf-ieee128.c ldbl-128ibm-compat: Add wide character scanning functions 2019-11-22 18:13:20 -03:00
test-wscanf-ldbl-compat.c ldbl-128ibm-compat: Add ISO C99 versions of scanf functions 2019-12-13 18:02:09 -03:00
Versions ldbl-128ibm-compat: Provide nexttoward functions 2020-02-28 08:20:02 -06:00
w_scalbf128.c ldbl-128ibm-compat: Provide a scalb implementation 2020-02-14 08:24:56 -06:00
wcstof128_l.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00
wcstof128.c Update copyright dates with scripts/update-copyrights. 2020-01-01 00:14:33 +00:00