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]

[PATCH 0/6] Prepare ldbl-128 to build as float128


These are the minimal set of changes necessary to
existing long double files to build them as float128
by macro overrides of the form:

  include <float128_private.h>
  include "../ldbl-128/FUNC.c"

whereby float128_private.h contains the set of
preprocessor directives necessary to rename the
contents of the shared files which minimizes
explicit macro injection.

Using this strategy, two explict macros must be
introduced.  One which renames long double as a
single token, and another to enable using an
alternate literal suffix.

Likewise, as a minor consequence, the usage of
hidden_def must be guaranteed to expand its
input once.  The mathx_hidden_def macro
accomplishes this.

Likewise, I have made several other small
cleanups in order to apply the above strategy
correctly.

Paul E. Murphy (6):
  ldbl-128: Simplify fma usage
  ldbl-128: Define and use mathx_hidden_def wrapper to hidden_def
  ldbl-128: Remove unused sqrtl declaration in e_asinl.c
  ldbl-128: Rename 'long double' to 'ldouble_t'
  ldbl-128: Use L(x) macro for long double constants
  Make shared ldbl files more shareable.

 math/e_exp2l.c                             |   20 +-
 math/k_rem_pio2l.c                         |    2 +-
 math/s_fdiml.c                             |   10 +-
 math/s_fmaxl.c                             |    5 +-
 math/s_fminl.c                             |    5 +-
 math/s_ldexpl.c                            |    3 +-
 math/s_nextdownl.c                         |    4 +-
 sysdeps/generic/math_private.h             |   11 +
 sysdeps/ieee754/ldbl-128/e_acoshl.c        |   14 +-
 sysdeps/ieee754/ldbl-128/e_acosl.c         |  148 +--
 sysdeps/ieee754/ldbl-128/e_asinl.c         |  103 +-
 sysdeps/ieee754/ldbl-128/e_atan2l.c        |   26 +-
 sysdeps/ieee754/ldbl-128/e_atanhl.c        |   10 +-
 sysdeps/ieee754/ldbl-128/e_coshl.c         |   10 +-
 sysdeps/ieee754/ldbl-128/e_exp10l.c        |   16 +-
 sysdeps/ieee754/ldbl-128/e_expl.c          |   46 +-
 sysdeps/ieee754/ldbl-128/e_fmodl.c         |    6 +-
 sysdeps/ieee754/ldbl-128/e_gammal_r.c      |  108 +-
 sysdeps/ieee754/ldbl-128/e_hypotl.c        |    8 +-
 sysdeps/ieee754/ldbl-128/e_ilogbl.c        |    2 +-
 sysdeps/ieee754/ldbl-128/e_j0l.c           |  864 ++++++-------
 sysdeps/ieee754/ldbl-128/e_j1l.c           |  858 ++++++-------
 sysdeps/ieee754/ldbl-128/e_jnl.c           |   68 +-
 sysdeps/ieee754/ldbl-128/e_lgammal_r.c     |  930 +++++++-------
 sysdeps/ieee754/ldbl-128/e_log10l.c        |  134 +-
 sysdeps/ieee754/ldbl-128/e_log2l.c         |  128 +-
 sysdeps/ieee754/ldbl-128/e_logl.c          |  240 ++--
 sysdeps/ieee754/ldbl-128/e_powl.c          |  110 +-
 sysdeps/ieee754/ldbl-128/e_rem_pio2l.c     |   14 +-
 sysdeps/ieee754/ldbl-128/e_remainderl.c    |   10 +-
 sysdeps/ieee754/ldbl-128/e_sinhl.c         |   10 +-
 sysdeps/ieee754/ldbl-128/gamma_productl.c  |   38 +-
 sysdeps/ieee754/ldbl-128/k_cosl.c          |   48 +-
 sysdeps/ieee754/ldbl-128/k_sincosl.c       |   62 +-
 sysdeps/ieee754/ldbl-128/k_sinl.c          |   48 +-
 sysdeps/ieee754/ldbl-128/k_tanl.c          |   38 +-
 sysdeps/ieee754/ldbl-128/lgamma_negl.c     |  758 +++++------
 sysdeps/ieee754/ldbl-128/lgamma_productl.c |   54 +-
 sysdeps/ieee754/ldbl-128/mul_splitl.h      |   55 +
 sysdeps/ieee754/ldbl-128/s_asinhl.c        |   14 +-
 sysdeps/ieee754/ldbl-128/s_atanl.c         |  202 +--
 sysdeps/ieee754/ldbl-128/s_cbrtl.c         |   30 +-
 sysdeps/ieee754/ldbl-128/s_ceill.c         |    2 +-
 sysdeps/ieee754/ldbl-128/s_copysignl.c     |    8 +-
 sysdeps/ieee754/ldbl-128/s_cosl.c          |    4 +-
 sysdeps/ieee754/ldbl-128/s_erfl.c          |  916 +++++++-------
 sysdeps/ieee754/ldbl-128/s_expm1l.c        |   52 +-
 sysdeps/ieee754/ldbl-128/s_fabsl.c         |    2 +-
 sysdeps/ieee754/ldbl-128/s_finitel.c       |    4 +-
 sysdeps/ieee754/ldbl-128/s_floorl.c        |    2 +-
 sysdeps/ieee754/ldbl-128/s_fmal.c          |   54 +-
 sysdeps/ieee754/ldbl-128/s_fpclassifyl.c   |    2 +-
 sysdeps/ieee754/ldbl-128/s_frexpl.c        |    8 +-
 sysdeps/ieee754/ldbl-128/s_isinfl.c        |    4 +-
 sysdeps/ieee754/ldbl-128/s_isnanl.c        |    4 +-
 sysdeps/ieee754/ldbl-128/s_issignalingl.c  |    2 +-
 sysdeps/ieee754/ldbl-128/s_llrintl.c       |   20 +-
 sysdeps/ieee754/ldbl-128/s_llroundl.c      |    6 +-
 sysdeps/ieee754/ldbl-128/s_log1pl.c        |  118 +-
 sysdeps/ieee754/ldbl-128/s_logbl.c         |    6 +-
 sysdeps/ieee754/ldbl-128/s_lrintl.c        |   22 +-
 sysdeps/ieee754/ldbl-128/s_lroundl.c       |    6 +-
 sysdeps/ieee754/ldbl-128/s_modfl.c         |    4 +-
 sysdeps/ieee754/ldbl-128/s_nearbyintl.c    |   10 +-
 sysdeps/ieee754/ldbl-128/s_nextafterl.c    |   12 +-
 sysdeps/ieee754/ldbl-128/s_nextupl.c       |    4 +-
 sysdeps/ieee754/ldbl-128/s_remquol.c       |   12 +-
 sysdeps/ieee754/ldbl-128/s_rintl.c         |    6 +-
 sysdeps/ieee754/ldbl-128/s_roundl.c        |    4 +-
 sysdeps/ieee754/ldbl-128/s_scalblnl.c      |   14 +-
 sysdeps/ieee754/ldbl-128/s_scalbnl.c       |   12 +-
 sysdeps/ieee754/ldbl-128/s_signbitl.c      |    3 +-
 sysdeps/ieee754/ldbl-128/s_sincosl.c       |    6 +-
 sysdeps/ieee754/ldbl-128/s_sinl.c          |    4 +-
 sysdeps/ieee754/ldbl-128/s_tanhl.c         |    8 +-
 sysdeps/ieee754/ldbl-128/s_tanl.c          |    4 +-
 sysdeps/ieee754/ldbl-128/s_truncl.c        |    4 +-
 sysdeps/ieee754/ldbl-128/t_expl.h          | 1862 ++++++++++++++--------------
 sysdeps/ieee754/ldbl-128/t_sincosl.c       |  669 +++++-----
 sysdeps/ieee754/ldbl-128/x2y2m1l.c         |   50 +-
 80 files changed, 4597 insertions(+), 4603 deletions(-)
 create mode 100644 sysdeps/ieee754/ldbl-128/mul_splitl.h

-- 
2.4.11


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