public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 0/8] More float128 declarations
@ 2016-11-09 18:41 Gabriel F. T. Gomes
  2016-11-09 18:41 ` [PATCH 6/8] float128: Expose _Float128 finite math functions Gabriel F. T. Gomes
                   ` (8 more replies)
  0 siblings, 9 replies; 33+ messages in thread
From: Gabriel F. T. Gomes @ 2016-11-09 18:41 UTC (permalink / raw)
  To: libc-alpha

The patches in this series add more parts of the __float128 implementation,
such as Makefile rules, function wrappers and declarations.  It doesn't enable
any of it, yet, and I tested for x86_64 and powerpc64le.

Subsequent series will:
  * Add strfromf128, strtof128/wcstof128 (I am still working on the manual).
  * Add libm tests for float128.
  * Enable float128 on powerpc64le.

Paul E. Murphy (8):
  ldbl-128: Use mathx_hidden_def inplace of hidden_def
  float128: Add _Float128 make bits to libm.
  float128: Add wrappers for IEEE functions.
  Add support for testing __STDC_WANT_IEC_60559_TYPES_EXT__
  float128: Add public _Float128 declarations to libm.
  float128: Expose _Float128 finite math functions.
  float128: Add private _Float128 declarations for libm.
  float128: Add wrappers to override ldbl-128 as float128.

 bits/floatn.h                                 |  27 ++
 bits/huge_val_flt128.h                        |  29 +++
 bits/libc-header-start.h                      |  15 ++
 bits/libm-simd-decl-stubs.h                   |   6 +
 include/complex.h                             |   7 +
 include/float.h                               |  31 +++
 include/math.h                                |  13 +
 math/Makefile                                 |  10 +-
 math/bits/cmathcalls.h                        |   4 +-
 math/bits/math-finite.h                       | 104 ++++++++
 math/bits/mathcalls.h                         |  30 ++-
 math/complex.h                                |  27 +-
 math/math.h                                   | 107 +++++++-
 sysdeps/generic/fix-fp-int-convert-overflow.h |   2 +
 sysdeps/generic/math-type-macros-float128.h   |  49 ++++
 sysdeps/generic/math_private.h                | 115 ++++++++-
 sysdeps/ieee754/float128/Makeconfig           |   3 +
 sysdeps/ieee754/float128/Versions             | 133 ++++++++++
 sysdeps/ieee754/float128/e_acosf128.c         |   2 +
 sysdeps/ieee754/float128/e_acoshf128.c        |   2 +
 sysdeps/ieee754/float128/e_asinf128.c         |   2 +
 sysdeps/ieee754/float128/e_atan2f128.c        |   2 +
 sysdeps/ieee754/float128/e_atanhf128.c        |   2 +
 sysdeps/ieee754/float128/e_coshf128.c         |   2 +
 sysdeps/ieee754/float128/e_exp10f128.c        |   2 +
 sysdeps/ieee754/float128/e_exp2f128.c         |   2 +
 sysdeps/ieee754/float128/e_expf128.c          |   2 +
 sysdeps/ieee754/float128/e_fmodf128.c         |   2 +
 sysdeps/ieee754/float128/e_gammaf128_r.c      |   2 +
 sysdeps/ieee754/float128/e_hypotf128.c        |   2 +
 sysdeps/ieee754/float128/e_ilogbf128.c        |   2 +
 sysdeps/ieee754/float128/e_j0f128.c           |   2 +
 sysdeps/ieee754/float128/e_j1f128.c           |   2 +
 sysdeps/ieee754/float128/e_jnf128.c           |   2 +
 sysdeps/ieee754/float128/e_lgammaf128.c       |   1 +
 sysdeps/ieee754/float128/e_lgammaf128_r.c     |   2 +
 sysdeps/ieee754/float128/e_log10f128.c        |   2 +
 sysdeps/ieee754/float128/e_log2f128.c         |   2 +
 sysdeps/ieee754/float128/e_logf128.c          |   2 +
 sysdeps/ieee754/float128/e_powf128.c          |   2 +
 sysdeps/ieee754/float128/e_rem_pio2f128.c     |   2 +
 sysdeps/ieee754/float128/e_remainderf128.c    |   2 +
 sysdeps/ieee754/float128/e_scalbf128.c        |   1 +
 sysdeps/ieee754/float128/e_sinhf128.c         |   2 +
 sysdeps/ieee754/float128/e_sqrtf128.c         |   2 +
 sysdeps/ieee754/float128/float128_private.h   | 343 ++++++++++++++++++++++++++
 sysdeps/ieee754/float128/gamma_productf128.c  |   2 +
 sysdeps/ieee754/float128/ieee754_float128.h   | 140 +++++++++++
 sysdeps/ieee754/float128/k_cosf128.c          |   2 +
 sysdeps/ieee754/float128/k_rem_pio2f128.c     |   2 +
 sysdeps/ieee754/float128/k_sincosf128.c       |   2 +
 sysdeps/ieee754/float128/k_sinf128.c          |   2 +
 sysdeps/ieee754/float128/k_tanf128.c          |   2 +
 sysdeps/ieee754/float128/lgamma_negf128.c     |   2 +
 sysdeps/ieee754/float128/lgamma_productf128.c |   2 +
 sysdeps/ieee754/float128/s_asinhf128.c        |   2 +
 sysdeps/ieee754/float128/s_atanf128.c         |   2 +
 sysdeps/ieee754/float128/s_cbrtf128.c         |   2 +
 sysdeps/ieee754/float128/s_ceilf128.c         |   2 +
 sysdeps/ieee754/float128/s_copysignf128.c     |   2 +
 sysdeps/ieee754/float128/s_cosf128.c          |   2 +
 sysdeps/ieee754/float128/s_erff128.c          |   2 +
 sysdeps/ieee754/float128/s_expm1f128.c        |   2 +
 sysdeps/ieee754/float128/s_fabsf128.c         |   2 +
 sysdeps/ieee754/float128/s_finitef128.c       |   2 +
 sysdeps/ieee754/float128/s_floorf128.c        |   2 +
 sysdeps/ieee754/float128/s_fmaf128.c          |   2 +
 sysdeps/ieee754/float128/s_fpclassifyf128.c   |   2 +
 sysdeps/ieee754/float128/s_frexpf128.c        |   2 +
 sysdeps/ieee754/float128/s_isinff128.c        |   2 +
 sysdeps/ieee754/float128/s_isnanf128.c        |   2 +
 sysdeps/ieee754/float128/s_issignalingf128.c  |   2 +
 sysdeps/ieee754/float128/s_llrintf128.c       |   2 +
 sysdeps/ieee754/float128/s_llroundf128.c      |   2 +
 sysdeps/ieee754/float128/s_log1pf128.c        |   2 +
 sysdeps/ieee754/float128/s_logbf128.c         |   2 +
 sysdeps/ieee754/float128/s_lrintf128.c        |   2 +
 sysdeps/ieee754/float128/s_lroundf128.c       |   2 +
 sysdeps/ieee754/float128/s_modff128.c         |   2 +
 sysdeps/ieee754/float128/s_nearbyintf128.c    |   2 +
 sysdeps/ieee754/float128/s_nextafterf128.c    |   2 +
 sysdeps/ieee754/float128/s_nexttowardf128.c   |   1 +
 sysdeps/ieee754/float128/s_nextupf128.c       |   2 +
 sysdeps/ieee754/float128/s_remquof128.c       |   2 +
 sysdeps/ieee754/float128/s_rintf128.c         |   2 +
 sysdeps/ieee754/float128/s_roundf128.c        |   2 +
 sysdeps/ieee754/float128/s_scalblnf128.c      |   2 +
 sysdeps/ieee754/float128/s_scalbnf128.c       |   2 +
 sysdeps/ieee754/float128/s_signbitf128.c      |   2 +
 sysdeps/ieee754/float128/s_significandf128.c  |   1 +
 sysdeps/ieee754/float128/s_sincosf128.c       |   2 +
 sysdeps/ieee754/float128/s_sinf128.c          |   2 +
 sysdeps/ieee754/float128/s_tanf128.c          |   2 +
 sysdeps/ieee754/float128/s_tanhf128.c         |   2 +
 sysdeps/ieee754/float128/s_truncf128.c        |   2 +
 sysdeps/ieee754/float128/t_sincosf128.c       |   2 +
 sysdeps/ieee754/float128/w_acosf128.c         |  35 +++
 sysdeps/ieee754/float128/w_acoshf128.c        |  35 +++
 sysdeps/ieee754/float128/w_asinf128.c         |  37 +++
 sysdeps/ieee754/float128/w_atan2f128.c        |  35 +++
 sysdeps/ieee754/float128/w_atanhf128.c        |  40 +++
 sysdeps/ieee754/float128/w_coshf128.c         |  33 +++
 sysdeps/ieee754/float128/w_exp10f128.c        |  38 +++
 sysdeps/ieee754/float128/w_exp2f128.c         |  36 +++
 sysdeps/ieee754/float128/w_expf128.c          |  34 +++
 sysdeps/ieee754/float128/w_fmodf128.c         |  37 +++
 sysdeps/ieee754/float128/w_hypotf128.c        |  34 +++
 sysdeps/ieee754/float128/w_ilogbf128.c        |  38 +++
 sysdeps/ieee754/float128/w_j0f128.c           |  56 +++++
 sysdeps/ieee754/float128/w_j1f128.c           |  55 +++++
 sysdeps/ieee754/float128/w_jnf128.c           |  75 ++++++
 sysdeps/ieee754/float128/w_lgammaf128.c       |  34 +++
 sysdeps/ieee754/float128/w_lgammaf128_r.c     |  34 +++
 sysdeps/ieee754/float128/w_log10f128.c        |  44 ++++
 sysdeps/ieee754/float128/w_log1pf128.c        |  36 +++
 sysdeps/ieee754/float128/w_log2f128.c         |  44 ++++
 sysdeps/ieee754/float128/w_logf128.c          |  44 ++++
 sysdeps/ieee754/float128/w_powf128.c          |  86 +++++++
 sysdeps/ieee754/float128/w_remainderf128.c    |  35 +++
 sysdeps/ieee754/float128/w_scalbf128.c        |   1 +
 sysdeps/ieee754/float128/w_scalblnf128.c      |  36 +++
 sysdeps/ieee754/float128/w_sinhf128.c         |  35 +++
 sysdeps/ieee754/float128/w_sqrtf128.c         |  35 +++
 sysdeps/ieee754/float128/w_tgammaf128.c       |  54 ++++
 sysdeps/ieee754/float128/x2y2m1f128.c         |   2 +
 sysdeps/ieee754/ldbl-128/s_finitel.c          |   2 +-
 sysdeps/ieee754/ldbl-128/s_isinfl.c           |   2 +-
 sysdeps/ieee754/ldbl-128/s_isnanl.c           |   2 +-
 sysdeps/ieee754/ldbl-opt/s_sin.c              |   1 +
 129 files changed, 2468 insertions(+), 20 deletions(-)
 create mode 100644 bits/floatn.h
 create mode 100644 bits/huge_val_flt128.h
 create mode 100644 include/float.h
 create mode 100644 sysdeps/generic/math-type-macros-float128.h
 create mode 100644 sysdeps/ieee754/float128/Makeconfig
 create mode 100644 sysdeps/ieee754/float128/Versions
 create mode 100644 sysdeps/ieee754/float128/e_acosf128.c
 create mode 100644 sysdeps/ieee754/float128/e_acoshf128.c
 create mode 100644 sysdeps/ieee754/float128/e_asinf128.c
 create mode 100644 sysdeps/ieee754/float128/e_atan2f128.c
 create mode 100644 sysdeps/ieee754/float128/e_atanhf128.c
 create mode 100644 sysdeps/ieee754/float128/e_coshf128.c
 create mode 100644 sysdeps/ieee754/float128/e_exp10f128.c
 create mode 100644 sysdeps/ieee754/float128/e_exp2f128.c
 create mode 100644 sysdeps/ieee754/float128/e_expf128.c
 create mode 100644 sysdeps/ieee754/float128/e_fmodf128.c
 create mode 100644 sysdeps/ieee754/float128/e_gammaf128_r.c
 create mode 100644 sysdeps/ieee754/float128/e_hypotf128.c
 create mode 100644 sysdeps/ieee754/float128/e_ilogbf128.c
 create mode 100644 sysdeps/ieee754/float128/e_j0f128.c
 create mode 100644 sysdeps/ieee754/float128/e_j1f128.c
 create mode 100644 sysdeps/ieee754/float128/e_jnf128.c
 create mode 100644 sysdeps/ieee754/float128/e_lgammaf128.c
 create mode 100644 sysdeps/ieee754/float128/e_lgammaf128_r.c
 create mode 100644 sysdeps/ieee754/float128/e_log10f128.c
 create mode 100644 sysdeps/ieee754/float128/e_log2f128.c
 create mode 100644 sysdeps/ieee754/float128/e_logf128.c
 create mode 100644 sysdeps/ieee754/float128/e_powf128.c
 create mode 100644 sysdeps/ieee754/float128/e_rem_pio2f128.c
 create mode 100644 sysdeps/ieee754/float128/e_remainderf128.c
 create mode 100644 sysdeps/ieee754/float128/e_scalbf128.c
 create mode 100644 sysdeps/ieee754/float128/e_sinhf128.c
 create mode 100644 sysdeps/ieee754/float128/e_sqrtf128.c
 create mode 100644 sysdeps/ieee754/float128/float128_private.h
 create mode 100644 sysdeps/ieee754/float128/gamma_productf128.c
 create mode 100644 sysdeps/ieee754/float128/ieee754_float128.h
 create mode 100644 sysdeps/ieee754/float128/k_cosf128.c
 create mode 100644 sysdeps/ieee754/float128/k_rem_pio2f128.c
 create mode 100644 sysdeps/ieee754/float128/k_sincosf128.c
 create mode 100644 sysdeps/ieee754/float128/k_sinf128.c
 create mode 100644 sysdeps/ieee754/float128/k_tanf128.c
 create mode 100644 sysdeps/ieee754/float128/lgamma_negf128.c
 create mode 100644 sysdeps/ieee754/float128/lgamma_productf128.c
 create mode 100644 sysdeps/ieee754/float128/s_asinhf128.c
 create mode 100644 sysdeps/ieee754/float128/s_atanf128.c
 create mode 100644 sysdeps/ieee754/float128/s_cbrtf128.c
 create mode 100644 sysdeps/ieee754/float128/s_ceilf128.c
 create mode 100644 sysdeps/ieee754/float128/s_copysignf128.c
 create mode 100644 sysdeps/ieee754/float128/s_cosf128.c
 create mode 100644 sysdeps/ieee754/float128/s_erff128.c
 create mode 100644 sysdeps/ieee754/float128/s_expm1f128.c
 create mode 100644 sysdeps/ieee754/float128/s_fabsf128.c
 create mode 100644 sysdeps/ieee754/float128/s_finitef128.c
 create mode 100644 sysdeps/ieee754/float128/s_floorf128.c
 create mode 100644 sysdeps/ieee754/float128/s_fmaf128.c
 create mode 100644 sysdeps/ieee754/float128/s_fpclassifyf128.c
 create mode 100644 sysdeps/ieee754/float128/s_frexpf128.c
 create mode 100644 sysdeps/ieee754/float128/s_isinff128.c
 create mode 100644 sysdeps/ieee754/float128/s_isnanf128.c
 create mode 100644 sysdeps/ieee754/float128/s_issignalingf128.c
 create mode 100644 sysdeps/ieee754/float128/s_llrintf128.c
 create mode 100644 sysdeps/ieee754/float128/s_llroundf128.c
 create mode 100644 sysdeps/ieee754/float128/s_log1pf128.c
 create mode 100644 sysdeps/ieee754/float128/s_logbf128.c
 create mode 100644 sysdeps/ieee754/float128/s_lrintf128.c
 create mode 100644 sysdeps/ieee754/float128/s_lroundf128.c
 create mode 100644 sysdeps/ieee754/float128/s_modff128.c
 create mode 100644 sysdeps/ieee754/float128/s_nearbyintf128.c
 create mode 100644 sysdeps/ieee754/float128/s_nextafterf128.c
 create mode 100644 sysdeps/ieee754/float128/s_nexttowardf128.c
 create mode 100644 sysdeps/ieee754/float128/s_nextupf128.c
 create mode 100644 sysdeps/ieee754/float128/s_remquof128.c
 create mode 100644 sysdeps/ieee754/float128/s_rintf128.c
 create mode 100644 sysdeps/ieee754/float128/s_roundf128.c
 create mode 100644 sysdeps/ieee754/float128/s_scalblnf128.c
 create mode 100644 sysdeps/ieee754/float128/s_scalbnf128.c
 create mode 100644 sysdeps/ieee754/float128/s_signbitf128.c
 create mode 100644 sysdeps/ieee754/float128/s_significandf128.c
 create mode 100644 sysdeps/ieee754/float128/s_sincosf128.c
 create mode 100644 sysdeps/ieee754/float128/s_sinf128.c
 create mode 100644 sysdeps/ieee754/float128/s_tanf128.c
 create mode 100644 sysdeps/ieee754/float128/s_tanhf128.c
 create mode 100644 sysdeps/ieee754/float128/s_truncf128.c
 create mode 100644 sysdeps/ieee754/float128/t_sincosf128.c
 create mode 100644 sysdeps/ieee754/float128/w_acosf128.c
 create mode 100644 sysdeps/ieee754/float128/w_acoshf128.c
 create mode 100644 sysdeps/ieee754/float128/w_asinf128.c
 create mode 100644 sysdeps/ieee754/float128/w_atan2f128.c
 create mode 100644 sysdeps/ieee754/float128/w_atanhf128.c
 create mode 100644 sysdeps/ieee754/float128/w_coshf128.c
 create mode 100644 sysdeps/ieee754/float128/w_exp10f128.c
 create mode 100644 sysdeps/ieee754/float128/w_exp2f128.c
 create mode 100644 sysdeps/ieee754/float128/w_expf128.c
 create mode 100644 sysdeps/ieee754/float128/w_fmodf128.c
 create mode 100644 sysdeps/ieee754/float128/w_hypotf128.c
 create mode 100644 sysdeps/ieee754/float128/w_ilogbf128.c
 create mode 100644 sysdeps/ieee754/float128/w_j0f128.c
 create mode 100644 sysdeps/ieee754/float128/w_j1f128.c
 create mode 100644 sysdeps/ieee754/float128/w_jnf128.c
 create mode 100644 sysdeps/ieee754/float128/w_lgammaf128.c
 create mode 100644 sysdeps/ieee754/float128/w_lgammaf128_r.c
 create mode 100644 sysdeps/ieee754/float128/w_log10f128.c
 create mode 100644 sysdeps/ieee754/float128/w_log1pf128.c
 create mode 100644 sysdeps/ieee754/float128/w_log2f128.c
 create mode 100644 sysdeps/ieee754/float128/w_logf128.c
 create mode 100644 sysdeps/ieee754/float128/w_powf128.c
 create mode 100644 sysdeps/ieee754/float128/w_remainderf128.c
 create mode 100644 sysdeps/ieee754/float128/w_scalbf128.c
 create mode 100644 sysdeps/ieee754/float128/w_scalblnf128.c
 create mode 100644 sysdeps/ieee754/float128/w_sinhf128.c
 create mode 100644 sysdeps/ieee754/float128/w_sqrtf128.c
 create mode 100644 sysdeps/ieee754/float128/w_tgammaf128.c
 create mode 100644 sysdeps/ieee754/float128/x2y2m1f128.c

-- 
2.4.11

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2017-03-03 20:50 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-09 18:41 [PATCH 0/8] More float128 declarations Gabriel F. T. Gomes
2016-11-09 18:41 ` [PATCH 6/8] float128: Expose _Float128 finite math functions Gabriel F. T. Gomes
2016-11-09 22:06   ` Joseph Myers
2017-03-03 20:17     ` Gabriel F. T. Gomes
2017-03-03 20:50       ` Joseph Myers
2016-11-09 18:41 ` [PATCH 4/8] Add support for testing __STDC_WANT_IEC_60559_TYPES_EXT__ Gabriel F. T. Gomes
2016-11-09 21:42   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 5/8] float128: Add public _Float128 declarations to libm Gabriel F. T. Gomes
2016-11-09 22:04   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 7/8] float128: Add private _Float128 declarations for libm Gabriel F. T. Gomes
2016-11-09 22:08   ` Joseph Myers
2016-11-10 22:13   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 1/8] ldbl-128: Use mathx_hidden_def inplace of hidden_def Gabriel F. T. Gomes
2016-11-09 18:41 ` [PATCH 3/8] float128: Add wrappers for IEEE functions Gabriel F. T. Gomes
2016-11-09 21:38   ` Joseph Myers
2016-12-05 16:48     ` Gabriel F. T. Gomes
2016-12-05 18:51       ` Joseph Myers
2016-12-05 22:52         ` Steven Munroe
2016-12-06  0:31           ` Joseph Myers
2016-12-06  2:39             ` Steven Munroe
2016-12-07 19:36         ` Gabriel F. T. Gomes
2016-12-07 21:47           ` Joseph Myers
2016-12-09 21:24             ` Gabriel F. T. Gomes
2016-12-14  0:47               ` Joseph Myers
2016-12-14 13:36                 ` Gabriel F. T. Gomes
2016-12-14 14:33                   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 8/8] float128: Add wrappers to override ldbl-128 as float128 Gabriel F. T. Gomes
2016-11-09 22:13   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 2/8] float128: Add _Float128 make bits to libm Gabriel F. T. Gomes
2016-12-09 21:23   ` Tulio Magno Quites Machado Filho
2016-12-12 22:49     ` Joseph Myers
2016-11-09 21:31 ` [PATCH 0/8] More float128 declarations Joseph Myers
2016-11-09 23:52   ` Joseph Myers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).