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]

Re: [PATCH v3 11/11] RFC: powerpc64le: Enable support for IEEE long double




On 12/3/19 11:05 AM, Gabriel F. T. Gomes wrote:
From: "Gabriel F. T. Gomes" <gabrielftg@linux.ibm.com>

DO NOT COMMIT!

Changes since v2:

   - Added definition of LDBL_IBM128_COMPAT_VERSION and
     LDBL_IBM128_VERSION (moved from a previous commit).

Changes since v1:

   - Use __LONG_DOUBLE_USES_FLOAT128 directly.

-- 8< --
On platforms where long double may have two different formats, i.e.: the
same format as double (64-bits) or something else (128-bits), building
with -mlong-double-128 is the default and function calls in the user
program match the name of the function in Glibc.  When building with
-mlong-double-64, Glibc installed headers redirect such calls to the
appropriate function.

This patch adds similar redirections to be used by user code builds in
IEEE long double mode (-mabi=ieeelongdouble).  It also skips some uses
of libc_hidden_proto in internal headers, because they also produce
redirections, causing a redirection conflict.

PS: Missing NEWS entry.
---
  argp/argp.h                                   |   3 +-
  libio/bits/stdio-ldbl.h                       |  46 +++++---
  libio/stdio.h                                 |  16 ++-
  misc/bits/syslog-ldbl.h                       |   4 +-
  misc/err.h                                    |   3 +-
  misc/error.h                                  |   6 +-
  misc/sys/cdefs.h                              |  38 ++++++-
  misc/sys/syslog.h                             |   4 +-
  stdio-common/printf.h                         |   3 +-
  stdlib/bits/stdlib-ldbl.h                     |  22 ++++
  stdlib/monetary.h                             |   3 +-
  stdlib/stdlib.h                               |   4 +-
  sysdeps/powerpc/powerpc64/le/Implies-before   |   1 +
  .../powerpc64/le/ldbl-128ibm-compat-abi.h     |   8 ++
  .../linux/powerpc/powerpc64/le/libc.abilist   |  93 ++++++++++++++++
  .../linux/powerpc/powerpc64/le/libm.abilist   | 104 ++++++++++++++++++
  wcsmbs/bits/wchar-ldbl.h                      |  36 +++++-
  wcsmbs/wchar.h                                |  14 ++-

Nearly all of the previous patches seem to be in good standing and touch little outside ldbl-ibm128-compat, and reviewed by those both more capable and qualified than myself. Let's jump to this one.

Ignoring the individual files for a moment, is it appropriate to split this into one or more patches to introduce the __LONG_DOUBLE_USE_FLOAT128 usage into the various user headers? Most of these changes look fairly straightforward, however the cdefs.h changes seem a bit more complicated. These seem like they could be committed before any switches are flipped.


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