Use libm_alias_ldouble for ldbl-128 functions.

This patch makes ldbl-128 functions use libm_alias_ldouble to define
function aliases.  float128_private.h is updated accordingly.  Most of
the ldbl-64-128 wrappers are removed as no longer needed with this
change (leaving those that involve versioning for functions in libc or
that shouldn't be exported from libm for _Float128 / _Float64x types
with the same format as long double).

Tested for x86_64, and tested with build-many-glibcs.py that installed
stripped shared libraries are unchanged by this patch.

	* sysdeps/ieee754/float128/float128_private.h: Include
	<libm-alias-ldouble.h> and <libm-alias-float128.h>.
	(libm_alias_ldouble_r): Undefine and redefine.
	* sysdeps/ieee754/ldbl-128/s_asinhl.c: Include
	<libm-alias-ldouble.h>.
	(asinhl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_atanl.c: Include
	<libm-alias-ldouble.h>.
	(atanl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_cbrtl.c: Include
	<libm-alias-ldouble.h>.
	(cbrtl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_ceill.c: Include
	<libm-alias-ldouble.h>.
	(ceill): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_copysignl.c: Include
	<libm-alias-ldouble.h>.
	(copysignl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_cosl.c: Include
	<libm-alias-ldouble.h>.
	(cosl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_erfl.c: Include
	<libm-alias-ldouble.h>.
	(erfl): Define using libm_alias_ldouble.
	(erfcl): Likewise.
	* sysdeps/ieee754/ldbl-128/s_expm1l.c: Include
	<libm-alias-ldouble.h>.
	(expm1l): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_fabsl.c: Include
	<libm-alias-ldouble.h>.
	(fabsl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_floorl.c: Include
	<libm-alias-ldouble.h>.
	(floorl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_fmal.c: Include
	<libm-alias-ldouble.h>.
	(fmal): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_frexpl.c: Include
	<libm-alias-ldouble.h>.
	(frexpl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_fromfpl.c (fromfpl): Define using
	libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_fromfpl_main.c: Include
	<libm-alias-ldouble.h>.
	* sysdeps/ieee754/ldbl-128/s_fromfpxl.c (fromfpxl): Define using
	libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_getpayloadl.c: Include
	<libm-alias-ldouble.h>.
	(getpayloadl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_llrintl.c: Include
	<libm-alias-ldouble.h>.
	(llrintl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_llroundl.c: Include
	<libm-alias-ldouble.h>.
	(llroundl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_logbl.c: Include
	<libm-alias-ldouble.h>.
	(logbl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_lrintl.c: Include
	<libm-alias-ldouble.h>.
	(lrintl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_lroundl.c: Include
	<libm-alias-ldouble.h>.
	(lroundl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_modfl.c: Include
	<libm-alias-ldouble.h>.
	(modfl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Include
	<libm-alias-ldouble.h>.
	(nearbyintl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_nextafterl.c: Include
	<libm-alias-ldouble.h>.
	(nextafterl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_nextupl.c: Include
	<libm-alias-ldouble.h>.
	(nextupl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_remquol.c: Include
	<libm-alias-ldouble.h>.
	(remquol): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_rintl.c: Include
	<libm-alias-ldouble.h>.
	(rintl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_roundevenl.c: Include
	<libm-alias-ldouble.h>.
	(roundevenl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_roundl.c: Include
	<libm-alias-ldouble.h>.
	(roundl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_setpayloadl.c (setpayloadl): Define
	using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_setpayloadl_main.c: Include
	<libm-alias-ldouble.h>.
	* sysdeps/ieee754/ldbl-128/s_setpayloadsigl.c (setpayloadsigl):
	Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_sincosl.c: Include
	<libm-alias-ldouble.h>.
	(sincosl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_sinl.c: Include
	<libm-alias-ldouble.h>.
	(sinl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_tanhl.c: Include
	<libm-alias-ldouble.h>.
	(tanhl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_tanl.c: Include
	<libm-alias-ldouble.h>.
	(tanl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_totalorderl.c: Include
	<libm-alias-ldouble.h>.
	(totalorderl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_totalordermagl.c: Include
	<libm-alias-ldouble.h>.
	(totalordermagl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_truncl.c: Include
	<libm-alias-ldouble.h>.
	(truncl): Define using libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_ufromfpl.c (ufromfpl): Define using
	libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-128/s_ufromfpxl.c (ufromfpxl): Define using
	libm_alias_ldouble.
	* sysdeps/ieee754/ldbl-64-128/s_copysignl.c: Include
	<libm-alias-ldouble.h>.
	(weak_alias): Do not undefine and redefine.
	[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
	(copysignl): Define with long_double_symbol only if [IS_IN
	(libc)].
	* sysdeps/ieee754/ldbl-64-128/s_frexpl.c: Include
	<libm-alias-ldouble.h>.
	(weak_alias): Do not undefine and redefine.
	[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
	(frexpl): Define with long_double_symbol only if [IS_IN (libc)].
	* sysdeps/ieee754/ldbl-64-128/s_modfl.c: Include
	<libm-alias-ldouble.h>.
	(weak_alias): Do not undefine and redefine.
	[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
	(modfl): Define with long_double_symbol only if [IS_IN (libc)].
	* sysdeps/ieee754/ldbl-64-128/s_asinhl.c: Remove file.
	* sysdeps/ieee754/ldbl-64-128/s_atanl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_cbrtl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_ceill.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_cosl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_erfl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_expm1l.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_fabsl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_floorl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_fmal.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_llrintl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_llroundl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_logbl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_lrintl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_lroundl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_nearbyintl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_remquol.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_rintl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_roundl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_sincosl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_sinl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_tanhl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_tanl.c: Likewise.
	* sysdeps/ieee754/ldbl-64-128/s_truncl.c: Likewise.
This commit is contained in:
Joseph Myers 2017-10-06 17:45:05 +00:00
parent 1e26d35193
commit fd3b4e7c8a
70 changed files with 261 additions and 176 deletions

162
ChangeLog
View File

@ -1,3 +1,165 @@
2017-10-06 Joseph Myers <joseph@codesourcery.com>
* sysdeps/ieee754/float128/float128_private.h: Include
<libm-alias-ldouble.h> and <libm-alias-float128.h>.
(libm_alias_ldouble_r): Undefine and redefine.
* sysdeps/ieee754/ldbl-128/s_asinhl.c: Include
<libm-alias-ldouble.h>.
(asinhl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_atanl.c: Include
<libm-alias-ldouble.h>.
(atanl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_cbrtl.c: Include
<libm-alias-ldouble.h>.
(cbrtl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_ceill.c: Include
<libm-alias-ldouble.h>.
(ceill): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_copysignl.c: Include
<libm-alias-ldouble.h>.
(copysignl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_cosl.c: Include
<libm-alias-ldouble.h>.
(cosl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_erfl.c: Include
<libm-alias-ldouble.h>.
(erfl): Define using libm_alias_ldouble.
(erfcl): Likewise.
* sysdeps/ieee754/ldbl-128/s_expm1l.c: Include
<libm-alias-ldouble.h>.
(expm1l): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fabsl.c: Include
<libm-alias-ldouble.h>.
(fabsl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_floorl.c: Include
<libm-alias-ldouble.h>.
(floorl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fmal.c: Include
<libm-alias-ldouble.h>.
(fmal): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_frexpl.c: Include
<libm-alias-ldouble.h>.
(frexpl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fromfpl.c (fromfpl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_fromfpl_main.c: Include
<libm-alias-ldouble.h>.
* sysdeps/ieee754/ldbl-128/s_fromfpxl.c (fromfpxl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_getpayloadl.c: Include
<libm-alias-ldouble.h>.
(getpayloadl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_llrintl.c: Include
<libm-alias-ldouble.h>.
(llrintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_llroundl.c: Include
<libm-alias-ldouble.h>.
(llroundl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_logbl.c: Include
<libm-alias-ldouble.h>.
(logbl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_lrintl.c: Include
<libm-alias-ldouble.h>.
(lrintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_lroundl.c: Include
<libm-alias-ldouble.h>.
(lroundl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_modfl.c: Include
<libm-alias-ldouble.h>.
(modfl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_nearbyintl.c: Include
<libm-alias-ldouble.h>.
(nearbyintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_nextafterl.c: Include
<libm-alias-ldouble.h>.
(nextafterl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_nextupl.c: Include
<libm-alias-ldouble.h>.
(nextupl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_remquol.c: Include
<libm-alias-ldouble.h>.
(remquol): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_rintl.c: Include
<libm-alias-ldouble.h>.
(rintl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_roundevenl.c: Include
<libm-alias-ldouble.h>.
(roundevenl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_roundl.c: Include
<libm-alias-ldouble.h>.
(roundl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_setpayloadl.c (setpayloadl): Define
using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_setpayloadl_main.c: Include
<libm-alias-ldouble.h>.
* sysdeps/ieee754/ldbl-128/s_setpayloadsigl.c (setpayloadsigl):
Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_sincosl.c: Include
<libm-alias-ldouble.h>.
(sincosl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_sinl.c: Include
<libm-alias-ldouble.h>.
(sinl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_tanhl.c: Include
<libm-alias-ldouble.h>.
(tanhl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_tanl.c: Include
<libm-alias-ldouble.h>.
(tanl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_totalorderl.c: Include
<libm-alias-ldouble.h>.
(totalorderl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_totalordermagl.c: Include
<libm-alias-ldouble.h>.
(totalordermagl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_truncl.c: Include
<libm-alias-ldouble.h>.
(truncl): Define using libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_ufromfpl.c (ufromfpl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-128/s_ufromfpxl.c (ufromfpxl): Define using
libm_alias_ldouble.
* sysdeps/ieee754/ldbl-64-128/s_copysignl.c: Include
<libm-alias-ldouble.h>.
(weak_alias): Do not undefine and redefine.
[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
(copysignl): Define with long_double_symbol only if [IS_IN
(libc)].
* sysdeps/ieee754/ldbl-64-128/s_frexpl.c: Include
<libm-alias-ldouble.h>.
(weak_alias): Do not undefine and redefine.
[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
(frexpl): Define with long_double_symbol only if [IS_IN (libc)].
* sysdeps/ieee754/ldbl-64-128/s_modfl.c: Include
<libm-alias-ldouble.h>.
(weak_alias): Do not undefine and redefine.
[IS_IN (libc)] (libm_alias_ldouble): Undefine and redefine.
(modfl): Define with long_double_symbol only if [IS_IN (libc)].
* sysdeps/ieee754/ldbl-64-128/s_asinhl.c: Remove file.
* sysdeps/ieee754/ldbl-64-128/s_atanl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_cbrtl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_ceill.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_cosl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_erfl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_expm1l.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_fabsl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_floorl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_fmal.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_llrintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_llroundl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_logbl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_lrintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_lroundl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_nearbyintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_remquol.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_rintl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_roundl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_sincosl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_sinl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_tanhl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_tanl.c: Likewise.
* sysdeps/ieee754/ldbl-64-128/s_truncl.c: Likewise.
2017-10-06 Carlos O'Donell <carlos@redhat.com>
[BZ #22111]

View File

@ -116,6 +116,12 @@
#define M_SQRT1_2l M_SQRT1_2f128
#include <libm-alias-ldouble.h>
#include <libm-alias-float128.h>
#undef libm_alias_ldouble_r
#define libm_alias_ldouble_r(from, to, r) libm_alias_float128_r (from, to, r)
/* IEEE function renames. */
#define __ieee754_acoshl __ieee754_acoshf128
#define __ieee754_acosl __ieee754_acosf128

View File

@ -32,6 +32,7 @@ static char rcsid[] = "$NetBSD: $";
#include <float.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128
one = 1,
@ -76,4 +77,4 @@ __asinhl (_Float128 x)
else
return w;
}
weak_alias (__asinhl, asinhl)
libm_alias_ldouble (__asinh, asinh)

View File

@ -62,6 +62,7 @@
#include <float.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
/* arctan(k/8), k = 0, ..., 82 */
static const _Float128 atantbl[84] = {
@ -250,4 +251,4 @@ __atanl (_Float128 x)
return u;
}
weak_alias (__atanl, atanl)
libm_alias_ldouble (__atan, atan)

View File

@ -56,6 +56,7 @@ Adapted for glibc October, 2001.
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128 CBRT2 = L(1.259921049894873164767210607278228350570251);
static const _Float128 CBRT4 = L(1.587401051968199474751705639272308260391493);
@ -132,4 +133,4 @@ __cbrtl (_Float128 x)
return (x);
}
weak_alias (__cbrtl, cbrtl)
libm_alias_ldouble (__cbrt, cbrt)

View File

@ -26,6 +26,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __ceill(_Float128 x)
{
@ -63,4 +64,4 @@ _Float128 __ceill(_Float128 x)
SET_LDOUBLE_WORDS64(x,i0,i1);
return x;
}
weak_alias (__ceill, ceill)
libm_alias_ldouble (__ceil, ceil)

View File

@ -25,6 +25,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __copysignl(_Float128 x, _Float128 y)
{
@ -35,4 +36,4 @@ _Float128 __copysignl(_Float128 x, _Float128 y)
|(hy&0x8000000000000000ULL));
return x;
}
weak_alias (__copysignl, copysignl)
libm_alias_ldouble (__copysign, copysign)

View File

@ -47,6 +47,7 @@
#include <errno.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __cosl(_Float128 x)
{
@ -83,4 +84,4 @@ _Float128 __cosl(_Float128 x)
}
}
}
weak_alias (__cosl, cosl)
libm_alias_ldouble (__cos, cos)

View File

@ -100,6 +100,7 @@
#include <float.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
/* Evaluate P[n] x^n + P[n-1] x^(n-1) + ... + P[0] */
@ -803,7 +804,7 @@ __erfl (_Float128 x)
return( y );
}
weak_alias (__erfl, erfl)
libm_alias_ldouble (__erf, erf)
_Float128
__erfcl (_Float128 x)
{
@ -945,4 +946,4 @@ __erfcl (_Float128 x)
}
}
weak_alias (__erfcl, erfcl)
libm_alias_ldouble (__erfc, erfc)

View File

@ -57,6 +57,7 @@
#include <float.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
/* exp(x) - 1 = x + 0.5 x^2 + x^3 P(x)/Q(x)
-.5 ln 2 < x < .5 ln 2
@ -163,4 +164,4 @@ __expm1l (_Float128 x)
return x;
}
libm_hidden_def (__expm1l)
weak_alias (__expm1l, expm1l)
libm_alias_ldouble (__expm1, expm1)

View File

@ -23,6 +23,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __fabsl(_Float128 x)
{
@ -31,4 +32,4 @@ _Float128 __fabsl(_Float128 x)
SET_LDOUBLE_MSW64(x,hx&0x7fffffffffffffffLL);
return x;
}
weak_alias (__fabsl, fabsl)
libm_alias_ldouble (__fabs, fabs)

View File

@ -26,6 +26,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __floorl(_Float128 x)
{
@ -64,4 +65,4 @@ _Float128 __floorl(_Float128 x)
SET_LDOUBLE_WORDS64(x,i0,i1);
return x;
}
weak_alias (__floorl, floorl)
libm_alias_ldouble (__floor, floor)

View File

@ -22,6 +22,7 @@
#include <fenv.h>
#include <ieee754.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <tininess.h>
/* This implementation uses rounding to odd to avoid problems with
@ -295,4 +296,4 @@ __fmal (_Float128 x, _Float128 y, _Float128 z)
return v.d * L(0x1p-228);
}
}
weak_alias (__fmal, fmal)
libm_alias_ldouble (__fma, fma)

View File

@ -29,6 +29,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128
two114 = L(2.0769187434139310514121985316880384E+34); /* 0x4071000000000000, 0 */
@ -51,4 +52,4 @@ _Float128 __frexpl(_Float128 x, int *eptr)
SET_LDOUBLE_MSW64(x,hx);
return x;
}
weak_alias (__frexpl, frexpl)
libm_alias_ldouble (__frexp, frexp)

View File

@ -2,4 +2,4 @@
#define INEXACT 0
#define FUNC __fromfpl
#include <s_fromfpl_main.c>
weak_alias (__fromfpl, fromfpl)
libm_alias_ldouble (__fromfp, fromfp)

View File

@ -20,6 +20,7 @@
#include <fenv.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <stdbool.h>
#include <stdint.h>

View File

@ -2,4 +2,4 @@
#define INEXACT 1
#define FUNC __fromfpxl
#include <s_fromfpl_main.c>
weak_alias (__fromfpxl, fromfpxl)
libm_alias_ldouble (__fromfpx, fromfpx)

View File

@ -18,6 +18,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <stdint.h>
_Float128
@ -55,4 +56,4 @@ __getpayloadl (const _Float128 *x)
SET_LDOUBLE_WORDS64 (ret, hx, lx);
return ret;
}
weak_alias (__getpayloadl, getpayloadl)
libm_alias_ldouble (__getpayload, getpayload)

View File

@ -24,6 +24,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <fix-fp-int-convert-overflow.h>
static const _Float128 two112[2] =
@ -105,4 +106,4 @@ __llrintl (_Float128 x)
return sx ? -result : result;
}
weak_alias (__llrintl, llrintl)
libm_alias_ldouble (__llrint, llrint)

View File

@ -23,6 +23,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <fix-fp-int-convert-overflow.h>
long long int
@ -99,4 +100,4 @@ __llroundl (_Float128 x)
return sign * result;
}
weak_alias (__llroundl, llroundl)
libm_alias_ldouble (__llround, llround)

View File

@ -25,6 +25,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128
__logbl (_Float128 x)
@ -51,4 +52,4 @@ __logbl (_Float128 x)
return (_Float128) (ex - 16383);
}
weak_alias (__logbl, logbl)
libm_alias_ldouble (__logb, logb)

View File

@ -24,6 +24,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <fix-fp-int-convert-overflow.h>
static const _Float128 two112[2] =
@ -134,4 +135,4 @@ __lrintl (_Float128 x)
return sx ? -result : result;
}
weak_alias (__lrintl, lrintl)
libm_alias_ldouble (__lrint, lrint)

View File

@ -23,6 +23,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <fix-fp-int-convert-overflow.h>
long int
@ -110,4 +111,4 @@ __lroundl (_Float128 x)
return sign * result;
}
weak_alias (__lroundl, lroundl)
libm_alias_ldouble (__lround, lround)

View File

@ -29,6 +29,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128 one = 1.0;
@ -76,4 +77,4 @@ _Float128 __modfl(_Float128 x, _Float128 *iptr)
}
}
}
weak_alias (__modfl, modfl)
libm_alias_ldouble (__modf, modf)

View File

@ -26,6 +26,7 @@
#include <fenv.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128
TWO112[2]={
@ -64,4 +65,4 @@ _Float128 __nearbyintl(_Float128 x)
fesetenv (&env);
return t;
}
weak_alias (__nearbyintl, nearbyintl)
libm_alias_ldouble (__nearbyint, nearbyint)

View File

@ -27,6 +27,7 @@ static char rcsid[] = "$NetBSD: $";
#include <errno.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __nextafterl(_Float128 x, _Float128 y)
{
@ -81,6 +82,6 @@ _Float128 __nextafterl(_Float128 x, _Float128 y)
SET_LDOUBLE_WORDS64(x,hx,lx);
return x;
}
weak_alias (__nextafterl, nextafterl)
libm_alias_ldouble (__nextafter, nextafter)
strong_alias (__nextafterl, __nexttowardl)
weak_alias (__nextafterl, nexttowardl)

View File

@ -18,6 +18,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
/* Return the least floating-point number greater than X. */
_Float128
@ -53,4 +54,4 @@ __nextupl (_Float128 x)
return x;
}
weak_alias (__nextupl, nextupl)
libm_alias_ldouble (__nextup, nextup)

View File

@ -21,6 +21,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128 zero = 0.0;
@ -109,4 +110,4 @@ __remquol (_Float128 x, _Float128 y, int *quo)
x = -x;
return x;
}
weak_alias (__remquol, remquol)
libm_alias_ldouble (__remquo, remquo)

View File

@ -29,6 +29,7 @@ static char rcsid[] = "$NetBSD: $";
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128
TWO112[2]={
@ -59,4 +60,4 @@ _Float128 __rintl(_Float128 x)
w = TWO112[sx]+x;
return w-TWO112[sx];
}
weak_alias (__rintl, rintl)
libm_alias_ldouble (__rint, rint)

View File

@ -19,6 +19,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <stdint.h>
#define BIAS 0x3fff
@ -100,4 +101,4 @@ __roundevenl (_Float128 x)
SET_LDOUBLE_WORDS64 (x, hx, lx);
return x;
}
weak_alias (__roundevenl, roundevenl)
libm_alias_ldouble (__roundeven, roundeven)

View File

@ -21,6 +21,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128
@ -77,4 +78,4 @@ __roundl (_Float128 x)
SET_LDOUBLE_WORDS64 (x, i0, i1);
return x;
}
weak_alias (__roundl, roundl)
libm_alias_ldouble (__round, round)

View File

@ -1,4 +1,4 @@
#define SIG 0
#define FUNC __setpayloadl
#include <s_setpayloadl_main.c>
weak_alias (__setpayloadl, setpayloadl)
libm_alias_ldouble (__setpayload, setpayload)

View File

@ -18,6 +18,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <nan-high-order-bit.h>
#include <stdint.h>

View File

@ -1,4 +1,4 @@
#define SIG 1
#define FUNC __setpayloadsigl
#include <s_setpayloadl_main.c>
weak_alias (__setpayloadsigl, setpayloadsigl)
libm_alias_ldouble (__setpayloadsig, setpayloadsig)

View File

@ -22,6 +22,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
void
__sincosl (_Float128 x, _Float128 *sinx, _Float128 *cosx)
@ -70,4 +71,4 @@ __sincosl (_Float128 x, _Float128 *sinx, _Float128 *cosx)
}
}
}
weak_alias (__sincosl, sincosl)
libm_alias_ldouble (__sincos, sincos)

View File

@ -47,6 +47,7 @@
#include <errno.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __sinl(_Float128 x)
{
@ -83,4 +84,4 @@ _Float128 __sinl(_Float128 x)
}
}
}
weak_alias (__sinl, sinl)
libm_alias_ldouble (__sin, sin)

View File

@ -44,6 +44,7 @@
#include <float.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
static const _Float128 one = 1.0, two = 2.0, tiny = L(1.0e-4900);
@ -97,4 +98,4 @@ __tanhl (_Float128 x)
}
return (jx & 0x80000000) ? -z : z;
}
weak_alias (__tanhl, tanhl)
libm_alias_ldouble (__tanh, tanh)

View File

@ -47,6 +47,7 @@
#include <errno.h>
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128 __tanl(_Float128 x)
{
@ -77,4 +78,4 @@ _Float128 __tanl(_Float128 x)
-1 -- n odd */
}
}
weak_alias (__tanl, tanl)
libm_alias_ldouble (__tan, tan)

View File

@ -18,6 +18,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <nan-high-order-bit.h>
#include <stdint.h>
@ -52,4 +53,4 @@ __totalorderl (_Float128 x, _Float128 y)
ly ^= hy_sign;
return hx < hy || (hx == hy && lx <= ly);
}
weak_alias (__totalorderl, totalorderl)
libm_alias_ldouble (__totalorder, totalorder)

View File

@ -18,6 +18,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
#include <nan-high-order-bit.h>
#include <stdint.h>
@ -46,4 +47,4 @@ __totalordermagl (_Float128 x, _Float128 y)
#endif
return hx < hy || (hx == hy && lx <= ly);
}
weak_alias (__totalordermagl, totalordermagl)
libm_alias_ldouble (__totalordermag, totalordermag)

View File

@ -21,6 +21,7 @@
#include <math.h>
#include <math_private.h>
#include <libm-alias-ldouble.h>
_Float128
@ -53,4 +54,4 @@ __truncl (_Float128 x)
return x;
}
weak_alias (__truncl, truncl)
libm_alias_ldouble (__trunc, trunc)

View File

@ -2,4 +2,4 @@
#define INEXACT 0
#define FUNC __ufromfpl
#include <s_fromfpl_main.c>
weak_alias (__ufromfpl, ufromfpl)
libm_alias_ldouble (__ufromfp, ufromfp)

View File

@ -2,4 +2,4 @@
#define INEXACT 1
#define FUNC __ufromfpxl
#include <s_fromfpl_main.c>
weak_alias (__ufromfpxl, ufromfpxl)
libm_alias_ldouble (__ufromfpx, ufromfpx)

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_asinhl.c>
long_double_symbol (libm, __asinhl, asinhl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_atanl.c>
long_double_symbol (libm, __atanl, atanl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_cbrtl.c>
long_double_symbol (libm, __cbrtl, cbrtl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_ceill.c>
long_double_symbol (libm, __ceill, ceill);

View File

@ -1,9 +1,10 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <libm-alias-ldouble.h>
#if IS_IN (libc)
# undef libm_alias_ldouble
# define libm_alias_ldouble(from, to)
#endif
#include <sysdeps/ieee754/ldbl-128/s_copysignl.c>
#if IS_IN (libm)
long_double_symbol (libm, __copysignl, copysignl);
#else
#if IS_IN (libc)
long_double_symbol (libc, __copysignl, copysignl);
#endif

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_cosl.c>
long_double_symbol (libm, __cosl, cosl);

View File

@ -1,6 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_erfl.c>
long_double_symbol (libm, __erfl, erfl);
long_double_symbol (libm, __erfcl, erfcl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_expm1l.c>
long_double_symbol (libm, __expm1l, expm1l);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_fabsl.c>
long_double_symbol (libm, __fabsl, fabsl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_floorl.c>
long_double_symbol (libm, __floorl, floorl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_fmal.c>
long_double_symbol (libm, __fmal, fmal);

View File

@ -1,9 +1,10 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <libm-alias-ldouble.h>
#if IS_IN (libc)
# undef libm_alias_ldouble
# define libm_alias_ldouble(from, to)
#endif
#include <sysdeps/ieee754/ldbl-128/s_frexpl.c>
#if IS_IN (libm)
long_double_symbol (libm, __frexpl, frexpl);
#else
#if IS_IN (libc)
long_double_symbol (libc, __frexpl, frexpl);
#endif

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_llrintl.c>
long_double_symbol (libm, __llrintl, llrintl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_llroundl.c>
long_double_symbol (libm, __llroundl, llroundl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_logbl.c>
long_double_symbol (libm, __logbl, logbl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_lrintl.c>
long_double_symbol (libm, __lrintl, lrintl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_lroundl.c>
long_double_symbol (libm, __lroundl, lroundl);

View File

@ -1,9 +1,10 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <libm-alias-ldouble.h>
#if IS_IN (libc)
# undef libm_alias_ldouble
# define libm_alias_ldouble(from, to)
#endif
#include <sysdeps/ieee754/ldbl-128/s_modfl.c>
#if IS_IN (libm)
long_double_symbol (libm, __modfl, modfl);
#else
#if IS_IN (libc)
long_double_symbol (libc, __modfl, modfl);
#endif

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_nearbyintl.c>
long_double_symbol (libm, __nearbyintl, nearbyintl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_remquol.c>
long_double_symbol (libm, __remquol, remquol);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_rintl.c>
long_double_symbol (libm, __rintl, rintl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_roundl.c>
long_double_symbol (libm, __roundl, roundl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_sincosl.c>
long_double_symbol (libm, __sincosl, sincosl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_sinl.c>
long_double_symbol (libm, __sinl, sinl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_tanhl.c>
long_double_symbol (libm, __tanhl, tanhl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_tanl.c>
long_double_symbol (libm, __tanl, tanl);

View File

@ -1,5 +0,0 @@
#include <math_ldbl_opt.h>
#undef weak_alias
#define weak_alias(n,a)
#include <sysdeps/ieee754/ldbl-128/s_truncl.c>
long_double_symbol (libm, __truncl, truncl);