mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-25 22:40:05 +00:00
ldbl-128ibm-compat: Create libm-alias-float128.h
Add a new libm-alias-float128.h in order to provide the __*ieee128 aliases for the existing *f128 that do not have a globally exported symbol. * sysdeps/ieee754/ldbl-128ibm-compat/Versions: New file. * sysdeps/ieee754/ldbl-128ibm-compat/libm-alias-float128.h: New file.
This commit is contained in:
parent
5e79e0292b
commit
209ae17c60
@ -1,3 +1,9 @@
|
|||||||
|
2018-06-20 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
|
||||||
|
Gabriel F. T. Gomes <gabriel@inconstante.eti.br>
|
||||||
|
|
||||||
|
* sysdeps/ieee754/ldbl-128ibm-compat/Versions: New file.
|
||||||
|
* sysdeps/ieee754/ldbl-128ibm-compat/libm-alias-float128.h: New file.
|
||||||
|
|
||||||
2018-06-20 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
|
2018-06-20 Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
|
||||||
|
|
||||||
* math/Makefile (libm-calls): Move s_significandF to...
|
* math/Makefile (libm-calls): Move s_significandF to...
|
||||||
|
113
sysdeps/ieee754/ldbl-128ibm-compat/Versions
Normal file
113
sysdeps/ieee754/ldbl-128ibm-compat/Versions
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
%include <ldbl-128ibm-compat-abi.h>
|
||||||
|
%ifndef LDBL_IBM128_VERSION
|
||||||
|
% error "ldbl-128ibm-compat-abi.h must define LDBL_IBM128_VERSION"
|
||||||
|
%endif
|
||||||
|
|
||||||
|
libm {
|
||||||
|
LDBL_IBM128_VERSION {
|
||||||
|
__acoshieee128;
|
||||||
|
__acosieee128;
|
||||||
|
__asinhieee128;
|
||||||
|
__asinieee128;
|
||||||
|
__atan2ieee128;
|
||||||
|
__atanhieee128;
|
||||||
|
__atanieee128;
|
||||||
|
__cabsieee128;
|
||||||
|
__cacoshieee128;
|
||||||
|
__cacosieee128;
|
||||||
|
__canonicalizeieee128;
|
||||||
|
__cargieee128;
|
||||||
|
__casinhieee128;
|
||||||
|
__casinieee128;
|
||||||
|
__catanhieee128;
|
||||||
|
__catanieee128;
|
||||||
|
__cbrtieee128;
|
||||||
|
__ccoshieee128;
|
||||||
|
__ccosieee128;
|
||||||
|
__ceilieee128;
|
||||||
|
__cexpieee128;
|
||||||
|
__cimagieee128;
|
||||||
|
__clog10ieee128;
|
||||||
|
__clogieee128;
|
||||||
|
__conjieee128;
|
||||||
|
__copysignieee128;
|
||||||
|
__coshieee128;
|
||||||
|
__cosieee128;
|
||||||
|
__cpowieee128;
|
||||||
|
__cprojieee128;
|
||||||
|
__crealieee128;
|
||||||
|
__csinhieee128;
|
||||||
|
__csinieee128;
|
||||||
|
__csqrtieee128;
|
||||||
|
__ctanhieee128;
|
||||||
|
__ctanieee128;
|
||||||
|
__erfcieee128;
|
||||||
|
__erfieee128;
|
||||||
|
__exp10ieee128;
|
||||||
|
__exp2ieee128;
|
||||||
|
__expieee128;
|
||||||
|
__expm1ieee128;
|
||||||
|
__fabsieee128;
|
||||||
|
__fdimieee128;
|
||||||
|
__floorieee128;
|
||||||
|
__fmaieee128;
|
||||||
|
__fmaxieee128;
|
||||||
|
__fmaxmagieee128;
|
||||||
|
__fminieee128;
|
||||||
|
__fminmagieee128;
|
||||||
|
__fmodieee128;
|
||||||
|
__frexpieee128;
|
||||||
|
__fromfpieee128;
|
||||||
|
__fromfpxieee128;
|
||||||
|
__getpayloadieee128;
|
||||||
|
__hypotieee128;
|
||||||
|
__ilogbieee128;
|
||||||
|
__j0ieee128;
|
||||||
|
__j1ieee128;
|
||||||
|
__jnieee128;
|
||||||
|
__ldexpieee128;
|
||||||
|
__lgammaieee128;
|
||||||
|
__lgammaieee128_r;
|
||||||
|
__llogbieee128;
|
||||||
|
__llrintieee128;
|
||||||
|
__llroundieee128;
|
||||||
|
__log10ieee128;
|
||||||
|
__log1pieee128;
|
||||||
|
__log2ieee128;
|
||||||
|
__logbieee128;
|
||||||
|
__logieee128;
|
||||||
|
__lrintieee128;
|
||||||
|
__lroundieee128;
|
||||||
|
__modfieee128;
|
||||||
|
__nanieee128;
|
||||||
|
__nearbyintieee128;
|
||||||
|
__nextafterieee128;
|
||||||
|
__nextdownieee128;
|
||||||
|
__nextupieee128;
|
||||||
|
__powieee128;
|
||||||
|
__remainderieee128;
|
||||||
|
__remquoieee128;
|
||||||
|
__rintieee128;
|
||||||
|
__roundevenieee128;
|
||||||
|
__roundieee128;
|
||||||
|
__scalblnieee128;
|
||||||
|
__scalbnieee128;
|
||||||
|
__setpayloadieee128;
|
||||||
|
__setpayloadsigieee128;
|
||||||
|
__sincosieee128;
|
||||||
|
__sinhieee128;
|
||||||
|
__sinieee128;
|
||||||
|
__sqrtieee128;
|
||||||
|
__tanhieee128;
|
||||||
|
__tanieee128;
|
||||||
|
__tgammaieee128;
|
||||||
|
__totalorderieee128;
|
||||||
|
__totalordermagieee128;
|
||||||
|
__truncieee128;
|
||||||
|
__ufromfpieee128;
|
||||||
|
__ufromfpxieee128;
|
||||||
|
__y0ieee128;
|
||||||
|
__y1ieee128;
|
||||||
|
__ynieee128;
|
||||||
|
}
|
||||||
|
}
|
64
sysdeps/ieee754/ldbl-128ibm-compat/libm-alias-float128.h
Normal file
64
sysdeps/ieee754/ldbl-128ibm-compat/libm-alias-float128.h
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/* Define aliases for libm _Float128 functions.
|
||||||
|
Copyright (C) 2018 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, see
|
||||||
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
#ifndef _LIBM_ALIAS_FLOAT128_H
|
||||||
|
#define _LIBM_ALIAS_FLOAT128_H
|
||||||
|
|
||||||
|
#include <bits/floatn.h>
|
||||||
|
#include <ldbl-128ibm-compat-abi.h>
|
||||||
|
|
||||||
|
/* This macro should be used on all long double functions that are not part of
|
||||||
|
the _Float128 API in order to provide *ieee128 symbols without exposing
|
||||||
|
internal *f128 symbols. */
|
||||||
|
#define libm_alias_float128_other_r_ldbl(from, to, r) \
|
||||||
|
strong_alias (from ## f128 ## r, __ ## to ## ieee128 ## r)
|
||||||
|
|
||||||
|
/* Define _FloatN / _FloatNx aliases (other than that for _Float128)
|
||||||
|
for a _Float128 libm function that has internal name FROM ## f128
|
||||||
|
## R and public names TO ## suffix ## R for each suffix of a
|
||||||
|
supported _FloatN / _FloatNx floating-point type with the same
|
||||||
|
format as _Float128. */
|
||||||
|
#if __HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE
|
||||||
|
# define libm_alias_float128_other_r(from, to, r) \
|
||||||
|
weak_alias (from ## f128 ## r, to ## f64x ## r); \
|
||||||
|
libm_alias_float128_other_r_ldbl(from, to, r)
|
||||||
|
#else
|
||||||
|
# define libm_alias_float128_other_r(from, to, r) \
|
||||||
|
libm_alias_float128_other_r_ldbl(from, to, r)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Likewise, but without the R suffix. */
|
||||||
|
#define libm_alias_float128_other(from, to) \
|
||||||
|
libm_alias_float128_other_r (from, to, )
|
||||||
|
|
||||||
|
/* Define aliases for a _Float128 libm function that has internal name
|
||||||
|
FROM ## f128 ## R and public names TO ## suffix ## R for each
|
||||||
|
suffix of a supported floating-point type with the same format as
|
||||||
|
_Float128. This should only be used for functions where such
|
||||||
|
public names exist for _FloatN types, not for
|
||||||
|
implementation-namespace exported names (where there is one name
|
||||||
|
per format, not per type) or for obsolescent functions not provided
|
||||||
|
for _FloatN types. */
|
||||||
|
#define libm_alias_float128_r(from, to, r) \
|
||||||
|
weak_alias (from ## f128 ## r, to ## f128 ## r); \
|
||||||
|
libm_alias_float128_other_r (from, to, r)
|
||||||
|
|
||||||
|
/* Likewise, but without the R suffix. */
|
||||||
|
#define libm_alias_float128(from, to) libm_alias_float128_r (from, to, )
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in New Issue
Block a user