This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFC PATCH v2 0/3] stdio/wchar/argp/err/error.h functions for powerpc64le


Although the email subject might suggest otherwise, this RFC patch does
not contain code to deal with all functions from the listed headers.  As
a matter of fact, this patch set only contains code for vfprintf
(similarly to the first version of the RFC).  My intention with this RFC
patch is to ask you if you could verify that I understood correctly what
was suggested in the replies to the first version of the RFC, more
specifically in the last message [1] (I'm already thankful for the
previous review and suggestions, so I hope that I've managed to make
this new version as small and easy to review as possible).

This patch set is based on top of Zack's patches for nldbl [2] and I
have made it public in a personal branch [3].  The first patch adds
changes to the new internal implementation of vfprintf
(__vfprintf_internal), adding a new macro to be used by its 'mode'
parameter.  The second patch uses it in the implementation of
__ieee128_vfprintf (an exposed symbol on powerpc64le).  As before, I
added a third patch, which actually enables it for powerpc64le, but only
for testing purposes (a similar patch will be proposed when support for
all other functions is ready, but it will not add new header files for
redirection (i.e.: no stdio-ieee128.h)).


[1] https://sourceware.org/ml/libc-alpha/2018-05/msg00892.html

[2] https://sourceware.org/ml/libc-alpha/2018-03/msg00185.html

[3] https://sourceware.org/git/?p=glibc.git;a=shortlog;h=refs/heads/gabriel/powerpc-ieee128-printscan

Gabriel F. T. Gomes (3):
  Prepare vfprintf to use __printf_fp/__printf_fphex with float128 arg
  ldbl-128ibm-compat: Use __vfprintf_internal for ieee128-vfprintf on
    powerpc64le
  RFC: powerpc64le: Convert default long double format to IEEE binary128

 libio/libioP.h                                     |  5 +-
 libio/stdio.h                                      | 13 +++++
 stdio-common/printf-parse.h                        |  3 ++
 stdio-common/vfprintf-internal.c                   | 62 +++++++++++++++++-----
 sysdeps/ieee754/ldbl-128ibm-compat/Makefile        | 43 +++++++++++++++
 sysdeps/ieee754/ldbl-128ibm-compat/Versions        | 10 ++++
 .../ldbl-128ibm-compat/bits/stdio-ieee128.h        | 38 +++++++++++++
 .../ieee754/ldbl-128ibm-compat/ieee128-vfprintf.c  | 25 +++++++++
 .../ldbl-128ibm-compat/test-printf-ibm128.c        |  1 +
 .../ldbl-128ibm-compat/test-printf-ieee128.c       |  1 +
 .../ldbl-128ibm-compat/test-printf-ldbl-compat.c   | 51 ++++++++++++++++++
 .../ldbl-128ibm-compat/test-printf-ldbl-compat.sh  | 42 +++++++++++++++
 sysdeps/powerpc/powerpc64/le/Implies-before        |  1 +
 .../powerpc/powerpc64/le/ldbl-128ibm-compat-abi.h  |  8 +++
 .../sysv/linux/powerpc/powerpc64/libc-le.abilist   |  1 +
 15 files changed, 289 insertions(+), 15 deletions(-)
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/Makefile
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/Versions
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/bits/stdio-ieee128.h
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/ieee128-vfprintf.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-printf-ldbl-compat.sh
 create mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc64/le/ldbl-128ibm-compat-abi.h

-- 
2.14.4


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]