[0/7] Remaining ldbl-128ibm-compat support
mbox series

Message ID 20200214161051.32579-1-murphyp@linux.vnet.ibm.com
Headers show
Series
  • Remaining ldbl-128ibm-compat support
Related show

Message

Paul E. Murphy Feb. 14, 2020, 4:10 p.m. UTC
This patch series contains the outstanding work
to support the IEEE 128 long double redirects from
within ldbl-128ibm-compat.

In conjunction with with the remaining patches on
the mailing list:

 <https://sourceware.org/ml/libc-alpha/2020-02/msg00401.html>

 and the remaing 5 header patches below

 <https://sourceware.org/ml/libc-alpha/2020-02/msg00049.html>

This should complete the backing support for the long
double redirects.  A final set of patches will enable the
redirects for ppc64le.  There is still more arch specific
Makefile wrangling to build this subdir.

Patches 1,3,5 are straightforward enablement.

Patch 2 enables the nexttoward/nextafterl redirects.  It is
nearly trivial, but fixes up some ldbl-128 files to use the
_Float128 name instead of 'long double' to promote reuse.

Patch 4 touches common math Makefile to support testing the
ibm128 type similar to other types.  It also modifies the
test-<type>.h to choose correct ULPs when redirects are
being used.

Patch 6 updates the ldbl-128ibm Makefile to support adding
extra compiler flags, primarily -mabi=ibmlongdouble.  It
also happened to be sitting between Patch 5 and 7.

Patch 7 allows using the redirects with libc while also
avoiding internal PLT usage.  This is kind of ugly, and I
would appreciate feedback on whether this approach is
acceptable, and if so, whether the macros are located in
the most suitable places.

Gabriel F. T. Gomes (1):
  ldbl-128ibm-compat: Provide nexttoward functions

Paul E. Murphy (4):
  ldbl-128ibm-compat: enforce correct abi flags on internal file
  ldbl-128ibm-compat: fixup subdir location of several funcs
  ldbl-128ibm-compat: enforce ibm128 on compat tests
  RFC: ldbl-128ibm-compat: PLT redirects for using ldbl redirects
    internally

Rajalakshmi Srinivasaraghavan (1):
  ldbl-128ibm-compat: Add tests for IBM long double functions

Tulio Magno Quites Machado Filho (1):
  ldbl-128ibm: Let long double files have specific compiler flags

 include/err.h                                 | 12 ++---
 include/stdio.h                               | 51 ++++++++++++------
 include/sys/cdefs.h                           | 23 ++++++++
 include/sys/syslog.h                          |  2 +-
 include/wchar.h                               |  2 +-
 math/Makefile                                 |  7 ++-
 math/test-float128.h                          |  2 +-
 math/test-float64x.h                          |  2 +-
 math/test-ibm128.h                            | 19 +++++++
 math/test-ldouble.h                           |  6 +++
 sysdeps/ieee754/ldbl-128/s_nexttoward.c       |  4 +-
 sysdeps/ieee754/ldbl-128/s_nexttowardf.c      |  4 +-
 sysdeps/ieee754/ldbl-128ibm-compat/Makeconfig |  3 ++
 sysdeps/ieee754/ldbl-128ibm-compat/Makefile   | 53 +++++++++++++------
 sysdeps/ieee754/ldbl-128ibm-compat/Versions   |  3 ++
 .../ldbl-128ibm-compat/ieee128-asprintf.c     |  5 +-
 .../ldbl-128ibm-compat/ieee128-dprintf.c      |  1 +
 .../ieee754/ldbl-128ibm-compat/ieee128-err.c  |  7 +++
 .../ldbl-128ibm-compat/ieee128-fprintf.c      |  1 +
 .../ieee128-isoc99_sscanf.c                   |  1 +
 .../ieee128-isoc99_vfscanf.c                  |  2 +
 .../ieee128-isoc99_vsscanf.c                  |  1 +
 .../ldbl-128ibm-compat/ieee128-sprintf.c      |  1 +
 .../ldbl-128ibm-compat/ieee128-syslog.c       |  1 +
 .../ldbl-128ibm-compat/ieee128-vfprintf.c     |  1 +
 .../ldbl-128ibm-compat/s_nextafterf128.c      | 20 +++++++
 .../ldbl-128ibm-compat/s_nexttowardf128.c     | 38 +++++++++++++
 sysdeps/ieee754/ldbl-128ibm/Makefile          | 22 ++++++--
 .../ldbl-128ibm/include/bits/iscanonical.h    |  2 +-
 sysdeps/powerpc/powerpc64/le/Makefile         | 50 ++++++++++++++---
 30 files changed, 288 insertions(+), 58 deletions(-)
 create mode 100644 math/test-ibm128.h
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/Makeconfig
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/s_nextafterf128.c
 create mode 100644 sysdeps/ieee754/ldbl-128ibm-compat/s_nexttowardf128.c