Message ID | 20190809183154.32605-1-gabriel@inconstante.net.br |
---|---|
Headers | show |
Series | IEEE long double printf and friends for powerpc64le | expand |
Any comments on these patches? I believe I have addressed all the comments in previous submissions. On Fri, 09 Aug 2019, Gabriel F. T. Gomes wrote: >From: "Gabriel F. T. Gomes" <gabrielftg@linux.ibm.com> > >A long time ago [1], I sent a patch set with the initial implementations >of many string to/from IEEE long double conversion routines for >powerpc64le. The patch set depended on other, at the time unapplied, >patch sets [2,3], which are now all integrated into master. Even though >this dependency existed, I got a lot of feedback (thanks, btw), which I >tried to address for this new round. > >In this thread, I only included printf and friends functions, which >helps reduce the size of the patch set and maybe ease review. :) > >As with previous submissions, these changes can only be tested once all >other functions have actually been integrated (because the function >redirections in our installed headers are macroized and work for all >long double routines). So, in order to test it, I use a more complete >branch, which I made available at: >https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/gabriel/powerpc-ieee128-printscan > >[1] https://sourceware.org/ml/libc-alpha/2018-06/msg00652.html >[2] https://sourceware.org/ml/libc-alpha/2018-10/msg00612.html >[3] https://sourceware.org/ml/libc-alpha/2019-02/msg00582.html > >Gabriel F. T. Gomes (6): > ldbl-128ibm-compat: Add regular character printing functions > ldbl-128ibm-compat: Add wide character printing functions > ldbl-128ibm-compat: Add regular character, fortified printing > functions > ldbl-128ibm-compat: Add wide character, fortified printing functions > ldbl-128ibm-compat: Test double values > ldbl-128ibm-compat: Test positional arguments
From: "Gabriel F. T. Gomes" <gabrielftg@linux.ibm.com> A long time ago [1], I sent a patch set with the initial implementations of many string to/from IEEE long double conversion routines for powerpc64le. The patch set depended on other, at the time unapplied, patch sets [2,3], which are now all integrated into master. Even though this dependency existed, I got a lot of feedback (thanks, btw), which I tried to address for this new round. In this thread, I only included printf and friends functions, which helps reduce the size of the patch set and maybe ease review. :) As with previous submissions, these changes can only be tested once all other functions have actually been integrated (because the function redirections in our installed headers are macroized and work for all long double routines). So, in order to test it, I use a more complete branch, which I made available at: https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/gabriel/powerpc-ieee128-printscan [1] https://sourceware.org/ml/libc-alpha/2018-06/msg00652.html [2] https://sourceware.org/ml/libc-alpha/2018-10/msg00612.html [3] https://sourceware.org/ml/libc-alpha/2019-02/msg00582.html Gabriel F. T. Gomes (6): ldbl-128ibm-compat: Add regular character printing functions ldbl-128ibm-compat: Add wide character printing functions ldbl-128ibm-compat: Add regular character, fortified printing functions ldbl-128ibm-compat: Add wide character, fortified printing functions ldbl-128ibm-compat: Test double values ldbl-128ibm-compat: Test positional arguments elf/tst-addr1.c | 7 +- sysdeps/ieee754/ldbl-128ibm-compat/Makefile | 104 +++++++++- sysdeps/ieee754/ldbl-128ibm-compat/Versions | 45 +++++ .../ldbl-128ibm-compat/ieee128-asprintf.c | 35 ++++ .../ldbl-128ibm-compat/ieee128-asprintf_chk.c | 38 ++++ .../ldbl-128ibm-compat/ieee128-dprintf.c | 34 ++++ .../ldbl-128ibm-compat/ieee128-dprintf_chk.c | 38 ++++ .../ldbl-128ibm-compat/ieee128-fprintf.c | 34 ++++ .../ldbl-128ibm-compat/ieee128-fprintf_chk.c | 38 ++++ .../ldbl-128ibm-compat/ieee128-fwprintf.c | 35 ++++ .../ldbl-128ibm-compat/ieee128-fwprintf_chk.c | 38 ++++ .../ldbl-128ibm-compat/ieee128-printf.c | 35 ++++ .../ldbl-128ibm-compat/ieee128-printf_chk.c | 38 ++++ .../ldbl-128ibm-compat/ieee128-snprintf.c | 35 ++++ .../ldbl-128ibm-compat/ieee128-snprintf_chk.c | 42 ++++ .../ldbl-128ibm-compat/ieee128-sprintf.c | 35 ++++ .../ldbl-128ibm-compat/ieee128-sprintf_chk.c | 42 ++++ .../ldbl-128ibm-compat/ieee128-swprintf.c | 36 ++++ .../ldbl-128ibm-compat/ieee128-swprintf_chk.c | 42 ++++ .../ldbl-128ibm-compat/ieee128-vasprintf.c | 27 +++ .../ieee128-vasprintf_chk.c | 31 +++ .../ldbl-128ibm-compat/ieee128-vdprintf.c | 26 +++ .../ldbl-128ibm-compat/ieee128-vdprintf_chk.c | 30 +++ .../ldbl-128ibm-compat/ieee128-vfprintf.c | 26 +++ .../ldbl-128ibm-compat/ieee128-vfprintf_chk.c | 30 +++ .../ldbl-128ibm-compat/ieee128-vfwprintf.c | 27 +++ .../ieee128-vfwprintf_chk.c | 31 +++ .../ldbl-128ibm-compat/ieee128-vprintf.c | 27 +++ .../ldbl-128ibm-compat/ieee128-vprintf_chk.c | 30 +++ .../ldbl-128ibm-compat/ieee128-vsnprintf.c | 28 +++ .../ieee128-vsnprintf_chk.c | 34 ++++ .../ldbl-128ibm-compat/ieee128-vsprintf.c | 27 +++ .../ldbl-128ibm-compat/ieee128-vsprintf_chk.c | 34 ++++ .../ldbl-128ibm-compat/ieee128-vswprintf.c | 28 +++ .../ieee128-vswprintf_chk.c | 34 ++++ .../ldbl-128ibm-compat/ieee128-vwprintf.c | 27 +++ .../ldbl-128ibm-compat/ieee128-vwprintf_chk.c | 30 +++ .../ldbl-128ibm-compat/ieee128-wprintf.c | 35 ++++ .../ldbl-128ibm-compat/ieee128-wprintf_chk.c | 38 ++++ .../test-printf-chk-ibm128.c | 1 + .../test-printf-chk-ieee128.c | 1 + .../test-printf-chk-ldbl-compat.c | 191 ++++++++++++++++++ .../test-printf-chk-redir-ibm128.c | 2 + .../test-printf-chk-redir-ieee128.c | 2 + .../ldbl-128ibm-compat/test-printf-ibm128.c | 1 + .../ldbl-128ibm-compat/test-printf-ieee128.c | 1 + .../test-printf-ldbl-compat.c | 182 +++++++++++++++++ .../test-wprintf-chk-ibm128.c | 1 + .../test-wprintf-chk-ieee128.c | 1 + .../test-wprintf-chk-ldbl-compat.c | 122 +++++++++++ .../test-wprintf-chk-redir-ibm128.c | 2 + .../test-wprintf-chk-redir-ieee128.c | 2 + .../ldbl-128ibm-compat/test-wprintf-ibm128.c | 1 + .../ldbl-128ibm-compat/test-wprintf-ieee128.c | 1 + .../test-wprintf-ldbl-compat.c | 120 +++++++++++ .../powerpc64/le/ldbl-128ibm-compat-abi.h | 8 + 56 files changed, 1988 insertions(+), 2 deletions(-) create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-asprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-asprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-dprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-dprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-fprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-fprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-fwprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-fwprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-printf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-printf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-snprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-snprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-sprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-sprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-swprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-swprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vasprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vasprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vdprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vdprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vfprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vfprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vfwprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vfwprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vsnprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vsnprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vsprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vsprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vswprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vswprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vwprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vwprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-wprintf.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-wprintf_chk.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-chk-ibm128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-chk-ieee128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-chk-ldbl-compat.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-chk-redir-ibm128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-chk-redir-ieee128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ibm128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ieee128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-printf-ldbl-compat.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-chk-ibm128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-chk-ieee128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-chk-ldbl-compat.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-chk-redir-ibm128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-chk-redir-ieee128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-ibm128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-ieee128.c create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/test-wprintf-ldbl-compat.c create mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc64/le/ldbl-128ibm-compat-abi.h