Add fmaximum, fminimum functions

C2X adds new <math.h> functions for floating-point maximum and
minimum, corresponding to the new operations that were added in IEEE
754-2019 because of concerns about the old operations not being
associative in the presence of signaling NaNs.  fmaximum and fminimum
handle NaNs like most <math.h> functions (any NaN argument means the
result is a quiet NaN).  fmaximum_num and fminimum_num handle both
quiet and signaling NaNs the way fmax and fmin handle quiet NaNs (if
one argument is a number and the other is a NaN, return the number),
but still raise "invalid" for a signaling NaN argument, making them
exceptions to the normal rule that a function with a floating-point
result raising "invalid" also returns a quiet NaN.  fmaximum_mag,
fminimum_mag, fmaximum_mag_num and fminimum_mag_num are corresponding
functions returning the argument with greatest or least absolute
value.  All these functions also treat +0 as greater than -0.  There
are also corresponding <tgmath.h> type-generic macros.

Add these functions to glibc.  The implementations use type-generic
templates based on those for fmax, fmin, fmaxmag and fminmag, and test
inputs are based on those for those functions with appropriate
adjustments to the expected results.  The RISC-V maintainers might
wish to add optimized versions of fmaximum_num and fminimum_num (for
float and double), since RISC-V (F extension version 2.2 and later)
provides instructions corresponding to those functions - though it
might be at least as useful to add architecture-independent built-in
functions to GCC and teach the RISC-V back end to expand those
functions inline, which is what you generally want for functions that
can be implemented with a single instruction.

Tested for x86_64 and x86, and with build-many-glibcs.py.
This commit is contained in:
Joseph Myers 2021-09-28 23:31:35 +00:00
parent 5bf07e1b3a
commit 90f0ac10a7
66 changed files with 3634 additions and 11 deletions

7
NEWS
View File

@ -32,6 +32,13 @@ Major new features:
- ffma, ffmal, dfmal and corresponding fMfmafN, fMfmafNx, fMxfmafN and
fMxfmafNx functions.
* <math.h> functions for floating-point maximum and minimum,
corresponding to new operations in IEEE 754-2019, and corresponding
<tgmath.h> macros, are added from draft ISO C2X: fmaximum,
fmaximum_num, fmaximum_mag, fmaximum_mag_num, fminimum, fminimum_num,
fminimum_mag, fminimum_mag_num and corresponding functions for float,
long double, _FloatN and _FloatNx.
* The __STDC_IEC_60559_BFP__ and __STDC_IEC_60559_COMPLEX__ macros are
predefined as specified in TS 18661-1:2014.

View File

@ -2097,8 +2097,8 @@ and @var{y}. It is similar to the expression
@end smallexample
except that @var{x} and @var{y} are only evaluated once.
If an argument is NaN, the other argument is returned. If both arguments
are NaN, NaN is returned.
If an argument is a quiet NaN, the other argument is returned. If both arguments
are NaN, or either is a signaling NaN, NaN is returned.
@end deftypefun
@deftypefun double fmax (double @var{x}, double @var{y})
@ -2113,8 +2113,58 @@ are NaN, NaN is returned.
The @code{fmax} function returns the greater of the two values @var{x}
and @var{y}.
If an argument is NaN, the other argument is returned. If both arguments
are NaN, NaN is returned.
If an argument is a quiet NaN, the other argument is returned. If both arguments
are NaN, or either is a signaling NaN, NaN is returned.
@end deftypefun
@deftypefun double fminimum (double @var{x}, double @var{y})
@deftypefunx float fminimumf (float @var{x}, float @var{y})
@deftypefunx {long double} fminimuml (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fminimumfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fminimumfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
The @code{fminimum} function returns the lesser of the two values @var{x}
and @var{y}. Unlike @code{fmin}, if either argument is a NaN, NaN is returned.
Positive zero is treated as greater than negative zero.
@end deftypefun
@deftypefun double fmaximum (double @var{x}, double @var{y})
@deftypefunx float fmaximumf (float @var{x}, float @var{y})
@deftypefunx {long double} fmaximuml (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fmaximumfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fmaximumfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
The @code{fmaximum} function returns the greater of the two values @var{x}
and @var{y}. Unlike @code{fmax}, if either argument is a NaN, NaN is returned.
Positive zero is treated as greater than negative zero.
@end deftypefun
@deftypefun double fminimum_num (double @var{x}, double @var{y})
@deftypefunx float fminimum_numf (float @var{x}, float @var{y})
@deftypefunx {long double} fminimum_numl (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fminimum_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fminimum_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
The @code{fminimum_num} function returns the lesser of the two values
@var{x} and @var{y}. If one argument is a number and the other is a
NaN, even a signaling NaN, the number is returned. Positive zero is
treated as greater than negative zero.
@end deftypefun
@deftypefun double fmaximum_num (double @var{x}, double @var{y})
@deftypefunx float fmaximum_numf (float @var{x}, float @var{y})
@deftypefunx {long double} fmaximum_numl (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fmaximum_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fmaximum_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
The @code{fmaximum_num} function returns the greater of the two values
@var{x} and @var{y}. If one argument is a number and the other is a
NaN, even a signaling NaN, the number is returned. Positive zero is
treated as greater than negative zero.
@end deftypefun
@deftypefun double fminmag (double @var{x}, double @var{y})
@ -2147,6 +2197,58 @@ have the same absolute value, or either is NaN, they behave the same
as the @code{fmax} functions.
@end deftypefun
@deftypefun double fminimum_mag (double @var{x}, double @var{y})
@deftypefunx float fminimum_magf (float @var{x}, float @var{y})
@deftypefunx {long double} fminimum_magl (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fminimum_magfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fminimum_magfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
These functions return whichever of the two values @var{x} and @var{y}
has the smaller absolute value. If both have the same absolute value,
or either is NaN, they behave the same as the @code{fminimum}
functions.
@end deftypefun
@deftypefun double fmaximum_mag (double @var{x}, double @var{y})
@deftypefunx float fmaximum_magf (float @var{x}, float @var{y})
@deftypefunx {long double} fmaximum_magl (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fmaximum_magfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fmaximum_magfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
These functions return whichever of the two values @var{x} and @var{y}
has the greater absolute value. If both have the same absolute value,
or either is NaN, they behave the same as the @code{fmaximum}
functions.
@end deftypefun
@deftypefun double fminimum_mag_num (double @var{x}, double @var{y})
@deftypefunx float fminimum_mag_numf (float @var{x}, float @var{y})
@deftypefunx {long double} fminimum_mag_numl (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fminimum_mag_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fminimum_mag_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
These functions return whichever of the two values @var{x} and @var{y}
has the smaller absolute value. If both have the same absolute value,
or either is NaN, they behave the same as the @code{fminimum_num}
functions.
@end deftypefun
@deftypefun double fmaximum_mag_num (double @var{x}, double @var{y})
@deftypefunx float fmaximum_mag_numf (float @var{x}, float @var{y})
@deftypefunx {long double} fmaximum_mag_numl (long double @var{x}, long double @var{y})
@deftypefunx _FloatN fmaximum_mag_numfN (_Float@var{N} @var{x}, _Float@var{N} @var{y})
@deftypefunx _FloatNx fmaximum_mag_numfNx (_Float@var{N}x @var{x}, _Float@var{N}x @var{y})
@standards{C2X, math.h}
@safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}}
These functions return whichever of the two values @var{x} and @var{y}
has the greater absolute value. If both have the same absolute value,
or either is NaN, they behave the same as the @code{fmaximum_num}
functions.
@end deftypefun
@deftypefun double fdim (double @var{x}, double @var{y})
@deftypefunx float fdimf (float @var{x}, float @var{y})
@deftypefunx {long double} fdiml (long double @var{x}, long double @var{y})

View File

@ -60,7 +60,10 @@ gen-libm-calls = cargF conjF cimagF crealF cabsF e_scalbF s_cacosF \
w_exp2F w_fmodF w_hypotF w_j0F w_j1F w_jnF w_logF \
w_log10F w_log2F w_powF w_remainderF w_scalbF \
w_sinhF w_sqrtF \
w_tgammaF w_lgammaF w_lgammaF_r w_expF e_exp2F
w_tgammaF w_lgammaF w_lgammaF_r w_expF e_exp2F \
s_fmaximumF s_fmaximum_magF s_fmaximum_numF \
s_fmaximum_mag_numF s_fminimumF s_fminimum_magF \
s_fminimum_numF s_fminimum_mag_numF
libm-calls = \
e_acosF e_acoshF e_asinF e_atan2F e_atanhF e_coshF e_expF e_fmodF \
@ -287,9 +290,11 @@ libm-test-funcs-auto = acos acosh asin asinh atan atan2 atanh cabs cacos \
lgamma log log10 log1p log2 pow sin sincos sinh sqrt \
tan tanh tgamma y0 y1 yn
libm-test-funcs-noauto = canonicalize ceil cimag conj copysign cproj creal \
fabs fdim floor fmax fmaxmag fmin fminmag fmod \
fpclassify frexp fromfp fromfpx getpayload ilogb \
iscanonical iseqsig isfinite isgreater \
fabs fdim floor fmax fmaximum fmaximum_mag \
fmaximum_mag_num fmaximum_num fmaxmag fmin fminimum \
fminimum_mag fminimum_mag_num fminimum_num fminmag \
fmod fpclassify frexp fromfp fromfpx getpayload \
ilogb iscanonical iseqsig isfinite isgreater \
isgreaterequal isinf isless islessequal \
islessgreater isnan isnormal issignaling issubnormal \
isunordered iszero llogb llrint llround logb lrint \
@ -375,7 +380,9 @@ tgmath3-macros = atan2 cbrt ceil copysign erf erfc exp2 expm1 fdim floor \
nextafter nexttoward remainder remquo rint round scalbn \
scalbln tgamma trunc acos asin atan acosh asinh atanh cos \
sin tan cosh sinh tanh exp log pow sqrt fabs carg cimag conj \
cproj creal roundeven nextup nextdown fminmag fmaxmag llogb \
cproj creal roundeven nextup nextdown fminmag fmaxmag \
fmaximum fmaximum_mag fmaximum_num fmaximum_mag_num \
fminimum fminimum_mag fminimum_num fminimum_mag_num llogb \
fromfp fromfpx ufromfp ufromfpx scalb $(tgmath3-narrow-macros)
tgmath3-macro-tests = $(addprefix test-tgmath3-,$(tgmath3-macros))
tests += $(tgmath3-macro-tests)
@ -682,8 +689,16 @@ CFLAGS-s_finite.c += -fno-builtin-finitel
CFLAGS-s_floor.c += -fno-builtin-floorl
CFLAGS-s_fma.c += -fno-builtin-fmal
CFLAGS-s_fmax.c += -fno-builtin-fmaxl
CFLAGS-s_fmaximum.c += -fno-builtin-fmaximuml
CFLAGS-s_fmaximum_mag.c += -fno-builtin-fmaximum_magl
CFLAGS-s_fmaximum_mag_num.c += -fno-builtin-fmaximum_mag_numl
CFLAGS-s_fmaximum_num.c += -fno-builtin-fmaximum_numl
CFLAGS-s_fmaxmag.c += -fno-builtin-fmaxmagl
CFLAGS-s_fmin.c += -fno-builtin-fminl
CFLAGS-s_fminimum.c += -fno-builtin-fminimuml
CFLAGS-s_fminimum_mag.c += -fno-builtin-fminimum_magl
CFLAGS-s_fminimum_mag_num.c += -fno-builtin-fminimum_mag_numl
CFLAGS-s_fminimum_num.c += -fno-builtin-fminimum_numl
CFLAGS-s_fminmag.c += -fno-builtin-fminmagl
CFLAGS-w_fmod.c += -fno-builtin-fmodl
CFLAGS-s_fmul.c += -fno-builtin-fmull

View File

@ -599,6 +599,20 @@ libm {
f32fmaf32x; f32fmaf64; f32xfmaf64;
fsqrt; fsqrtl; dsqrtl;
f32sqrtf32x; f32sqrtf64; f32xsqrtf64;
fmaximum; fmaximumf; fmaximuml; fmaximumf32; fmaximumf64; fmaximumf32x;
fmaximum_num; fmaximum_numf; fmaximum_numl;
fmaximum_numf32; fmaximum_numf64; fmaximum_numf32x;
fmaximum_mag; fmaximum_magf; fmaximum_magl;
fmaximum_magf32; fmaximum_magf64; fmaximum_magf32x;
fmaximum_mag_num; fmaximum_mag_numf; fmaximum_mag_numl;
fmaximum_mag_numf32; fmaximum_mag_numf64; fmaximum_mag_numf32x;
fminimum; fminimumf; fminimuml; fminimumf32; fminimumf64; fminimumf32x;
fminimum_num; fminimum_numf; fminimum_numl;
fminimum_numf32; fminimum_numf64; fminimum_numf32x;
fminimum_mag; fminimum_magf; fminimum_magl;
fminimum_magf32; fminimum_magf64; fminimum_magf32x;
fminimum_mag_num; fminimum_mag_numf; fminimum_mag_numl;
fminimum_mag_numf32; fminimum_mag_numf64; fminimum_mag_numf32x;
# Functions involving _Float64x or _Float128, for some configurations.
f32fmaf64x; f32fmaf128;
f32xfmaf64x; f32xfmaf128; f64fmaf64x; f64fmaf128;
@ -606,5 +620,13 @@ libm {
f32sqrtf64x; f32sqrtf128;
f32xsqrtf64x; f32xsqrtf128; f64sqrtf64x; f64sqrtf128;
f64xsqrtf128;
fmaximumf64x; fmaximumf128;
fmaximum_numf64x; fmaximum_numf128;
fmaximum_magf64x; fmaximum_magf128;
fmaximum_mag_numf64x; fmaximum_mag_numf128;
fminimumf64x; fminimumf128;
fminimum_numf64x; fminimum_numf128;
fminimum_magf64x; fminimum_magf128;
fminimum_mag_numf64x; fminimum_mag_numf128;
}
}

View File

@ -378,6 +378,32 @@ __MATHCALLX (fmaxmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
__MATHCALLX (fminmag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
#endif
#if __GLIBC_USE (ISOC2X)
/* Return maximum value from X and Y. */
__MATHCALLX (fmaximum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return minimum value from X and Y. */
__MATHCALLX (fminimum,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return maximum numeric value from X and Y. */
__MATHCALLX (fmaximum_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return minimum numeric value from X and Y. */
__MATHCALLX (fminimum_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return value with maximum magnitude. */
__MATHCALLX (fmaximum_mag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return value with minimum magnitude. */
__MATHCALLX (fminimum_mag,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return numeric value with maximum magnitude. */
__MATHCALLX (fmaximum_mag_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
/* Return numeric value with minimum magnitude. */
__MATHCALLX (fminimum_mag_num,, (_Mdouble_ __x, _Mdouble_ __y), (__const__));
#endif
#if __GLIBC_USE (IEC_60559_EXT) || __MATH_DECLARING_FLOATN
/* Total order operation. */
__MATHDECL_1 (int, totalorder,, (const _Mdouble_ *__x,

View File

@ -707,6 +707,15 @@ class Tests(object):
('_Float32x', 'f32x'),
('_Float64x', 'f64x')):
self.add_tests(prefix + fn, ret, ['r'] * args)
# C2X functions.
self.add_tests('fmaximum', 'r', ['r', 'r'])
self.add_tests('fmaximum_mag', 'r', ['r', 'r'])
self.add_tests('fmaximum_num', 'r', ['r', 'r'])
self.add_tests('fmaximum_mag_num', 'r', ['r', 'r'])
self.add_tests('fminimum', 'r', ['r', 'r'])
self.add_tests('fminimum_mag', 'r', ['r', 'r'])
self.add_tests('fminimum_num', 'r', ['r', 'r'])
self.add_tests('fminimum_mag_num', 'r', ['r', 'r'])
# Miscellaneous functions.
self.add_tests('scalb', 's', ['s', 's'])

130
math/libm-test-fmaximum.inc Normal file
View File

@ -0,0 +1,130 @@
/* Test fmaximum.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fmaximum_test_data[] =
{
TEST_ff_f (fmaximum, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, minus_zero, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_zero, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, min_subnorm_value, -min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, min_value, -min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, max_value, -max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 9, 0, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, -9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, plus_infty, 9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -9, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, plus_infty, -9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 9, minus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -9, minus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_zero, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_zero, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, 0, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, 0, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, minus_zero, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, minus_zero, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, 9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, 9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, plus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, plus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, minus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, plus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, plus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, minus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, minus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fmaximum_test (void)
{
ALL_RM_TEST (fmaximum, 1, fmaximum_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fmaximum_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,144 @@
/* Test fmaximum_mag.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fmaximum_mag_test_data[] =
{
TEST_ff_f (fmaximum_mag, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, minus_zero, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_zero, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, min_subnorm_value, -min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, min_value, -min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, max_value, -max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, max_value, min_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, max_value, -min_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -max_value, min_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -max_value, -min_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, min_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, min_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -min_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -min_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 9, 0, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -9, 0, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, plus_infty, 9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -9, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, plus_infty, -9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_infty, 9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_infty, -9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_zero, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_zero, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, 0, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, 0, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, minus_zero, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, minus_zero, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, 9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, 9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, plus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, plus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, minus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, plus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, plus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, minus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, minus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fmaximum_mag_test (void)
{
ALL_RM_TEST (fmaximum_mag, 1, fmaximum_mag_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fmaximum_mag_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,144 @@
/* Test fmaximum_mag_num.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fmaximum_mag_num_test_data[] =
{
TEST_ff_f (fmaximum_mag_num, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, minus_zero, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_zero, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, min_subnorm_value, -min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, min_value, -min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, max_value, -max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, max_value, min_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, max_value, -min_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -max_value, min_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -max_value, -min_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, min_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, min_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -min_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -min_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 9, 0, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -9, 0, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, plus_infty, 9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -9, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, plus_infty, -9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_infty, 9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_infty, -9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, -qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_zero, qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_zero, -qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 9, qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 9, -qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -9, qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -9, -qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, 0, snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, 0, -snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, minus_zero, snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, minus_zero, -snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, 9, snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, 9, -snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -9, snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -9, -snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, plus_infty, qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, plus_infty, -qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_infty, qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, minus_infty, -qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, plus_infty, snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, plus_infty, -snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, minus_infty, snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, minus_infty, -snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_mag_num, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_mag_num, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fmaximum_mag_num_test (void)
{
ALL_RM_TEST (fmaximum_mag_num, 1, fmaximum_mag_num_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fmaximum_mag_num_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,130 @@
/* Test fmaximum_num.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fmaximum_num_test_data[] =
{
TEST_ff_f (fmaximum_num, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, minus_zero, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_zero, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, min_subnorm_value, -min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, min_value, -min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, max_value, -max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 9, 0, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, -9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, plus_infty, 9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -9, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, plus_infty, -9, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 9, minus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -9, minus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, -qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_zero, qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_zero, -qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 9, qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 9, -qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -9, qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -9, -qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, 0, snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, 0, -snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, minus_zero, snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, minus_zero, -snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, 9, snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, 9, -snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -9, snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -9, -snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, plus_infty, qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, plus_infty, -qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_infty, qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, minus_infty, -qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, plus_infty, snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, plus_infty, -snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, minus_infty, snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, minus_infty, -snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fmaximum_num, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fmaximum_num, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fmaximum_num_test (void)
{
ALL_RM_TEST (fmaximum_num, 1, fmaximum_num_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fmaximum_num_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

129
math/libm-test-fminimum.inc Normal file
View File

@ -0,0 +1,129 @@
/* Test fminimum.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fminimum_test_data[] =
{
TEST_ff_f (fminimum, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 0, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_zero, 0, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -min_subnorm_value, min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -min_value, min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -max_value, max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 0, 9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -9, 0, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 0, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, plus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 9, plus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, plus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -9, plus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_infty, 9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_infty, -9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 0, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_zero, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_zero, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, 0, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, 0, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, minus_zero, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, minus_zero, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, 9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, 9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, plus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, plus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, minus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, plus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, plus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, minus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, minus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fminimum_test (void)
{
ALL_RM_TEST (fminimum, 1, fminimum_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fminimum_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,143 @@
/* Test fminimum_mag.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fminimum_mag_test_data[] =
{
TEST_ff_f (fminimum_mag, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 0, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_zero, 0, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -min_subnorm_value, min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -min_value, min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -max_value, max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, max_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, max_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -max_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -max_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, min_value, max_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, min_value, -max_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -min_value, max_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -min_value, -max_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 0, 9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 0, -9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, plus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 9, plus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, plus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -9, plus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 9, minus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -9, minus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 0, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_zero, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_zero, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -9, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -9, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, 0, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, 0, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, minus_zero, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, minus_zero, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, 9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, 9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -9, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -9, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, 9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, -9, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, plus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, plus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, minus_infty, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, plus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, plus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, minus_infty, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, minus_infty, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fminimum_mag_test (void)
{
ALL_RM_TEST (fminimum_mag, 1, fminimum_mag_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fminimum_mag_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,143 @@
/* Test fminimum_mag_num.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fminimum_mag_num_test_data[] =
{
TEST_ff_f (fminimum_mag_num, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 0, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_zero, 0, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, min_subnorm_value, min_subnorm_value, min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -min_subnorm_value, min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, min_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -min_value, min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, max_value, max_value, max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -max_value, max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, max_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, max_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -max_value, min_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -max_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, min_value, max_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, min_value, -max_value, min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -min_value, max_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -min_value, -max_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 0, 9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 0, -9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, plus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 9, plus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, plus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -9, plus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 9, minus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -9, minus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 0, qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 0, -qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_zero, qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_zero, -qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 9, qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 9, -qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -9, qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -9, -qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, 0, snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, 0, -snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, minus_zero, snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, minus_zero, -snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, 9, snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, 9, -snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -9, snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -9, -snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, plus_infty, qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, plus_infty, -qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_infty, qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, minus_infty, -qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, plus_infty, snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, plus_infty, -snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, minus_infty, snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, minus_infty, -snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_mag_num, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_mag_num, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fminimum_mag_num_test (void)
{
ALL_RM_TEST (fminimum_mag_num, 1, fminimum_mag_num_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fminimum_mag_num_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,129 @@
/* Test fminimum_num.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include "libm-test-driver.c"
static const struct test_ff_f_data fminimum_num_test_data[] =
{
TEST_ff_f (fminimum_num, 0, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 0, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_zero, 0, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, min_subnorm_value, -min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -min_subnorm_value, min_subnorm_value, -min_subnorm_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, min_value, -min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -min_value, min_value, -min_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, max_value, -max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -max_value, max_value, -max_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 9, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 0, 9, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -9, 0, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 0, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, plus_infty, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 9, plus_infty, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, plus_infty, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -9, plus_infty, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_infty, 9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_infty, -9, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -9, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 0, qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 0, -qnan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_zero, qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_zero, -qnan_value, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 9, qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 9, -qnan_value, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -9, qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -9, -qnan_value, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, 0, snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, 0, -snan_value, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, minus_zero, snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, minus_zero, -snan_value, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, 9, snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, 9, -snan_value, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -9, snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -9, -snan_value, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, 0, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, 9, 9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, -9, -9, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, 0, 0, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, minus_zero, minus_zero, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, 9, 9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, -9, -9, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, plus_infty, qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, plus_infty, -qnan_value, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_infty, qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, minus_infty, -qnan_value, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, plus_infty, snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, plus_infty, -snan_value, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, minus_infty, snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, minus_infty, -snan_value, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, plus_infty, plus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, minus_infty, minus_infty, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, -qnan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
TEST_ff_f (fminimum_num, qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -qnan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -qnan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
TEST_ff_f (fminimum_num, -snan_value, -snan_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION),
};
static void
fminimum_num_test (void)
{
ALL_RM_TEST (fminimum_num, 1, fminimum_num_test_data, RUN_TEST_LOOP_ff_f, END);
}
static void
do_test (void)
{
fminimum_num_test ();
}
/*
* Local Variables:
* mode:c
* End:
*/

View File

@ -0,0 +1,35 @@
/* Return number with maximum magnitude.
Copyright (C) 2016-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fmaximum_mag_num) (FLOAT x, FLOAT y)
{
FLOAT ax = M_FABS (x);
FLOAT ay = M_FABS (y);
if (isgreater (ax, ay))
return x;
else if (isless (ax, ay))
return y;
else if (ax == ay)
return (M_COPYSIGN (1, x) >= M_COPYSIGN (1, y) ? x : y);
else
return isnan (y) ? (isnan (x) ? x + y : x) : y;
}
declare_mgen_alias (__fmaximum_mag_num, fmaximum_mag_num);

View File

@ -0,0 +1,35 @@
/* Return value with maximum magnitude.
Copyright (C) 2016-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fmaximum_mag) (FLOAT x, FLOAT y)
{
FLOAT ax = M_FABS (x);
FLOAT ay = M_FABS (y);
if (isgreater (ax, ay))
return x;
else if (isless (ax, ay))
return y;
else if (ax == ay)
return (M_COPYSIGN (1, x) >= M_COPYSIGN (1, y) ? x : y);
else
return x + y;
}
declare_mgen_alias (__fmaximum_mag, fmaximum_mag);

View File

@ -0,0 +1,33 @@
/* Return maximum number of X and Y.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fmaximum_num) (FLOAT x, FLOAT y)
{
if (isgreater (x, y))
return x;
else if (isless (x, y))
return y;
else if (x == y)
return (M_COPYSIGN (1, x) >= M_COPYSIGN (1, y) ? x : y);
else
return isnan (y) ? (isnan (x) ? x + y : x) : y;
}
declare_mgen_alias (__fmaximum_num, fmaximum_num);

View File

@ -0,0 +1,33 @@
/* Return maximum of X and Y.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fmaximum) (FLOAT x, FLOAT y)
{
if (isgreater (x, y))
return x;
else if (isless (x, y))
return y;
else if (x == y)
return (M_COPYSIGN (1, x) >= M_COPYSIGN (1, y) ? x : y);
else
return x + y;
}
declare_mgen_alias (__fmaximum, fmaximum);

View File

@ -0,0 +1,35 @@
/* Return number with minimum magnitude.
Copyright (C) 2016-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fminimum_mag_num) (FLOAT x, FLOAT y)
{
FLOAT ax = M_FABS (x);
FLOAT ay = M_FABS (y);
if (isless (ax, ay))
return x;
else if (isgreater (ax, ay))
return y;
else if (ax == ay)
return (M_COPYSIGN (1, x) <= M_COPYSIGN (1, y) ? x : y);
else
return isnan (y) ? (isnan (x) ? x + y : x) : y;
}
declare_mgen_alias (__fminimum_mag_num, fminimum_mag_num);

View File

@ -0,0 +1,35 @@
/* Return value with minimum magnitude.
Copyright (C) 2016-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fminimum_mag) (FLOAT x, FLOAT y)
{
FLOAT ax = M_FABS (x);
FLOAT ay = M_FABS (y);
if (isless (ax, ay))
return x;
else if (isgreater (ax, ay))
return y;
else if (ax == ay)
return (M_COPYSIGN (1, x) <= M_COPYSIGN (1, y) ? x : y);
else
return x + y;
}
declare_mgen_alias (__fminimum_mag, fminimum_mag);

View File

@ -0,0 +1,33 @@
/* Return minimum number of X and Y.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fminimum_num) (FLOAT x, FLOAT y)
{
if (isless (x, y))
return x;
else if (isgreater (x, y))
return y;
else if (x == y)
return (M_COPYSIGN (1, x) <= M_COPYSIGN (1, y) ? x : y);
else
return isnan (y) ? (isnan (x) ? x + y : x) : y;
}
declare_mgen_alias (__fminimum_num, fminimum_num);

View File

@ -0,0 +1,33 @@
/* Return minimum of X and Y.
Copyright (C) 1997-2021 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
<https://www.gnu.org/licenses/>. */
#include <math.h>
FLOAT
M_DECL_FUNC (__fminimum) (FLOAT x, FLOAT y)
{
if (isless (x, y))
return x;
else if (isgreater (x, y))
return y;
else if (x == y)
return (M_COPYSIGN (1, x) <= M_COPYSIGN (1, y) ? x : y);
else
return x + y;
}
declare_mgen_alias (__fminimum, fminimum);

View File

@ -48,7 +48,7 @@ volatile int count_cdouble;
volatile int count_cfloat;
volatile int count_cldouble;
#define NCALLS 132
#define NCALLS 156
#define NCALLS_INT 4
#define NCCALLS 47
@ -290,6 +290,14 @@ F(compile_test) (void)
a = fmin (fmin (x, a), fmin (c, b));
b = fmaxmag (fmaxmag (a, x), fmaxmag (c, b));
a = fminmag (fminmag (x, a), fminmag (c, b));
b = fmaximum (fmaximum (a, x), fmaximum (c, b));
a = fminimum (fminimum (x, a), fminimum (c, b));
b = fmaximum_num (fmaximum_num (a, x), fmaximum_num (c, b));
a = fminimum_num (fminimum_num (x, a), fminimum_num (c, b));
b = fmaximum_mag (fmaximum_mag (a, x), fmaximum_mag (c, b));
a = fminimum_mag (fminimum_mag (x, a), fminimum_mag (c, b));
b = fmaximum_mag_num (fmaximum_mag_num (a, x), fmaximum_mag_num (c, b));
a = fminimum_mag_num (fminimum_mag_num (x, a), fminimum_mag_num (c, b));
b = fma (sin (a), sin (x), sin (c));
#ifdef TEST_INT
@ -393,6 +401,14 @@ F(compile_test) (void)
a = fmin (y, y);
a = fmaxmag (y, y);
a = fminmag (y, y);
a = fmaximum (y, y);
a = fminimum (y, y);
a = fmaximum_num (y, y);
a = fminimum_num (y, y);
a = fmaximum_mag (y, y);
a = fminimum_mag (y, y);
a = fmaximum_mag_num (y, y);
a = fminimum_mag_num (y, y);
a = fma (y, y, y);
#ifdef TEST_INT
@ -943,6 +959,70 @@ TYPE
return x + y;
}
TYPE
(F(fminimum)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fmaximum)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fminimum_num)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fmaximum_num)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fminimum_mag)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fmaximum_mag)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fminimum_mag_num)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fmaximum_mag_num)) (TYPE x, TYPE y)
{
++count;
P ();
return x + y;
}
TYPE
(F(fma)) (TYPE x, TYPE y, TYPE z)
{

View File

@ -929,6 +929,38 @@
# define fminmag(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, fminmag)
#endif
#if __GLIBC_USE (ISOC2X)
/* Return maximum value from X and Y. */
# define fmaximum(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, fmaximum)
/* Return minimum value from X and Y. */
# define fminimum(Val1, Val2) __TGMATH_BINARY_REAL_ONLY (Val1, Val2, fminimum)
/* Return maximum numeric value from X and Y. */
# define fmaximum_num(Val1, Val2) \
__TGMATH_BINARY_REAL_ONLY (Val1, Val2, fmaximum_num)
/* Return minimum numeric value from X and Y. */
# define fminimum_num(Val1, Val2) \
__TGMATH_BINARY_REAL_ONLY (Val1, Val2, fminimum_num)
/* Return value with maximum magnitude. */
# define fmaximum_mag(Val1, Val2) \
__TGMATH_BINARY_REAL_ONLY (Val1, Val2, fmaximum_mag)
/* Return value with minimum magnitude. */
# define fminimum_mag(Val1, Val2) \
__TGMATH_BINARY_REAL_ONLY (Val1, Val2, fminimum_mag)
/* Return numeric value with maximum magnitude. */
# define fmaximum_mag_num(Val1, Val2) \
__TGMATH_BINARY_REAL_ONLY (Val1, Val2, fmaximum_mag_num)
/* Return numeric value with minimum magnitude. */
# define fminimum_mag_num(Val1, Val2) \
__TGMATH_BINARY_REAL_ONLY (Val1, Val2, fminimum_mag_num)
#endif
/* Absolute value, conjugates, and projection. */

View File

@ -128,6 +128,14 @@ libm {
__f64fmaieee128;
__f32sqrtieee128;
__f64sqrtieee128;
__fmaximumieee128;
__fmaximum_numieee128;
__fmaximum_magieee128;
__fmaximum_mag_numieee128;
__fminimumieee128;
__fminimum_numieee128;
__fminimum_magieee128;
__fminimum_mag_numieee128;
}
}
libc {

View File

@ -45,7 +45,9 @@ libnldbl-calls = asprintf dprintf fprintf fscanf fwprintf fwscanf iovfscanf \
nextup nextdown totalorder totalordermag getpayload \
canonicalize setpayload setpayloadsig llogb fmaxmag fminmag \
roundeven fromfp ufromfp fromfpx ufromfpx fadd dadd \
fdiv ddiv ffma dfma fmul dmul fsqrt dsqrt fsub dsub
fdiv ddiv ffma dfma fmul dmul fsqrt dsqrt fsub dsub \
fmaximum fmaximum_mag fmaximum_num fmaximum_mag_num \
fminimum fminimum_mag fminimum_num fminimum_mag_num
libnldbl-routines = $(libnldbl-calls:%=nldbl-%)
libnldbl-inhibit-o = $(object-suffixes)
libnldbl-static-only-routines = $(libnldbl-routines)
@ -108,8 +110,16 @@ CFLAGS-nldbl-finite.c = -fno-builtin-finitel
CFLAGS-nldbl-floor.c = -fno-builtin-floorl
CFLAGS-nldbl-fma.c = -fno-builtin-fmal
CFLAGS-nldbl-fmax.c = -fno-builtin-fmaxl
CFLAGS-nldbl-fmaximum.c += -fno-builtin-fmaximuml
CFLAGS-nldbl-fmaximum_mag.c += -fno-builtin-fmaximum_magl
CFLAGS-nldbl-fmaximum_mag_num.c += -fno-builtin-fmaximum_mag_numl
CFLAGS-nldbl-fmaximum_num.c += -fno-builtin-fmaximum_numl
CFLAGS-nldbl-fmaxmag.c = -fno-builtin-fmaxmagl
CFLAGS-nldbl-fmin.c = -fno-builtin-fminl
CFLAGS-nldbl-fminimum.c += -fno-builtin-fminimuml
CFLAGS-nldbl-fminimum_mag.c += -fno-builtin-fminimum_magl
CFLAGS-nldbl-fminimum_mag_num.c += -fno-builtin-fminimum_mag_numl
CFLAGS-nldbl-fminimum_num.c += -fno-builtin-fminimum_numl
CFLAGS-nldbl-fminmag.c = -fno-builtin-fminmagl
CFLAGS-nldbl-fmod.c = -fno-builtin-fmodl
CFLAGS-nldbl-fmul.c = -fno-builtin-fmull

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fmaximum.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fmaximuml (double x, double y)
{
return fmaximum (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fmaximum_mag.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fmaximum_magl (double x, double y)
{
return fmaximum_mag (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fmaximum_mag_num.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fmaximum_mag_numl (double x, double y)
{
return fmaximum_mag_num (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fmaximum_num.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fmaximum_numl (double x, double y)
{
return fmaximum_num (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fminimum.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fminimuml (double x, double y)
{
return fminimum (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fminimum_mag.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fminimum_magl (double x, double y)
{
return fminimum_mag (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fminimum_mag_num.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fminimum_mag_numl (double x, double y)
{
return fminimum_mag_num (x, y);
}

View File

@ -0,0 +1,26 @@
/* Compatibility routine for IEEE double as long double for fminimum_num.
Copyright (C) 2021 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
<https://www.gnu.org/licenses/>. */
#include "nldbl-compat.h"
double
attribute_hidden
fminimum_numl (double x, double y)
{
return fminimum_num (x, y);
}

View File

@ -1113,5 +1113,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -50,4 +50,8 @@ CFLAGS-e_log2l.c += -fno-builtin-fabsl
CFLAGS-e_remainderl.c += -fno-builtin-fabsl
CFLAGS-s_fmaxmagl.c += -fno-builtin-fabsl
CFLAGS-s_fminmagl.c += -fno-builtin-fabsl
CFLAGS-s_fmaximum_magl.c += -fno-builtin-fabsl
CFLAGS-s_fmaximum_mag_numl.c += -fno-builtin-fabsl
CFLAGS-s_fminimum_magl.c += -fno-builtin-fabsl
CFLAGS-s_fminimum_mag_numl.c += -fno-builtin-fabsl
endif

View File

@ -1078,5 +1078,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -1135,6 +1135,70 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -707,5 +707,53 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -481,6 +481,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 _LIB_VERSION D 0x4

View File

@ -481,6 +481,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 _LIB_VERSION D 0x4

View File

@ -773,5 +773,53 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -792,6 +792,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 exp2l F

View File

@ -1120,5 +1120,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -1050,5 +1050,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -481,6 +481,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 _LIB_VERSION D 0x4

View File

@ -832,5 +832,53 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -793,5 +793,53 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -793,5 +793,53 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -792,6 +792,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 exp2l F

View File

@ -1078,5 +1078,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -793,5 +793,53 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -838,6 +838,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -837,6 +837,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -831,6 +831,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -1218,6 +1218,14 @@ GLIBC_2.35 __f32fmaieee128 F
GLIBC_2.35 __f32sqrtieee128 F
GLIBC_2.35 __f64fmaieee128 F
GLIBC_2.35 __f64sqrtieee128 F
GLIBC_2.35 __fmaximum_mag_numieee128 F
GLIBC_2.35 __fmaximum_magieee128 F
GLIBC_2.35 __fmaximum_numieee128 F
GLIBC_2.35 __fmaximumieee128 F
GLIBC_2.35 __fminimum_mag_numieee128 F
GLIBC_2.35 __fminimum_magieee128 F
GLIBC_2.35 __fminimum_numieee128 F
GLIBC_2.35 __fminimumieee128 F
GLIBC_2.35 dfmal F
GLIBC_2.35 dsqrtl F
GLIBC_2.35 f32fmaf128 F
@ -1242,5 +1250,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -962,5 +962,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -1059,5 +1059,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -1079,6 +1079,70 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -1079,6 +1079,70 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -792,6 +792,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 exp2l F

View File

@ -792,6 +792,54 @@ GLIBC_2.35 f32xfmaf64 F
GLIBC_2.35 f32xsqrtf64 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 exp2l F

View File

@ -1086,6 +1086,70 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F
GLIBC_2.4 __clog10l F

View File

@ -1078,5 +1078,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -1111,5 +1111,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F

View File

@ -1111,5 +1111,69 @@ GLIBC_2.35 f64xfmaf128 F
GLIBC_2.35 f64xsqrtf128 F
GLIBC_2.35 ffma F
GLIBC_2.35 ffmal F
GLIBC_2.35 fmaximum F
GLIBC_2.35 fmaximum_mag F
GLIBC_2.35 fmaximum_mag_num F
GLIBC_2.35 fmaximum_mag_numf F
GLIBC_2.35 fmaximum_mag_numf128 F
GLIBC_2.35 fmaximum_mag_numf32 F
GLIBC_2.35 fmaximum_mag_numf32x F
GLIBC_2.35 fmaximum_mag_numf64 F
GLIBC_2.35 fmaximum_mag_numf64x F
GLIBC_2.35 fmaximum_mag_numl F
GLIBC_2.35 fmaximum_magf F
GLIBC_2.35 fmaximum_magf128 F
GLIBC_2.35 fmaximum_magf32 F
GLIBC_2.35 fmaximum_magf32x F
GLIBC_2.35 fmaximum_magf64 F
GLIBC_2.35 fmaximum_magf64x F
GLIBC_2.35 fmaximum_magl F
GLIBC_2.35 fmaximum_num F
GLIBC_2.35 fmaximum_numf F
GLIBC_2.35 fmaximum_numf128 F
GLIBC_2.35 fmaximum_numf32 F
GLIBC_2.35 fmaximum_numf32x F
GLIBC_2.35 fmaximum_numf64 F
GLIBC_2.35 fmaximum_numf64x F
GLIBC_2.35 fmaximum_numl F
GLIBC_2.35 fmaximumf F
GLIBC_2.35 fmaximumf128 F
GLIBC_2.35 fmaximumf32 F
GLIBC_2.35 fmaximumf32x F
GLIBC_2.35 fmaximumf64 F
GLIBC_2.35 fmaximumf64x F
GLIBC_2.35 fmaximuml F
GLIBC_2.35 fminimum F
GLIBC_2.35 fminimum_mag F
GLIBC_2.35 fminimum_mag_num F
GLIBC_2.35 fminimum_mag_numf F
GLIBC_2.35 fminimum_mag_numf128 F
GLIBC_2.35 fminimum_mag_numf32 F
GLIBC_2.35 fminimum_mag_numf32x F
GLIBC_2.35 fminimum_mag_numf64 F
GLIBC_2.35 fminimum_mag_numf64x F
GLIBC_2.35 fminimum_mag_numl F
GLIBC_2.35 fminimum_magf F
GLIBC_2.35 fminimum_magf128 F
GLIBC_2.35 fminimum_magf32 F
GLIBC_2.35 fminimum_magf32x F
GLIBC_2.35 fminimum_magf64 F
GLIBC_2.35 fminimum_magf64x F
GLIBC_2.35 fminimum_magl F
GLIBC_2.35 fminimum_num F
GLIBC_2.35 fminimum_numf F
GLIBC_2.35 fminimum_numf128 F
GLIBC_2.35 fminimum_numf32 F
GLIBC_2.35 fminimum_numf32x F
GLIBC_2.35 fminimum_numf64 F
GLIBC_2.35 fminimum_numf64x F
GLIBC_2.35 fminimum_numl F
GLIBC_2.35 fminimumf F
GLIBC_2.35 fminimumf128 F
GLIBC_2.35 fminimumf32 F
GLIBC_2.35 fminimumf32x F
GLIBC_2.35 fminimumf64 F
GLIBC_2.35 fminimumf64x F
GLIBC_2.35 fminimuml F
GLIBC_2.35 fsqrt F
GLIBC_2.35 fsqrtl F