]> git.ipfire.org Git - thirdparty/glibc.git/blame - math/test-ldouble.h
Fix f64xdivf128, f64xmulf128 spurious underflows (bug 28358)
[thirdparty/glibc.git] / math / test-ldouble.h
CommitLineData
f9536db7 1/* Common definitions for libm tests for long double.
2b778ceb 2 Copyright (C) 1997-2021 Free Software Foundation, Inc.
24a2718f
AS
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
5a82c748 17 <https://www.gnu.org/licenses/>. */
24a2718f 18
bc9620d0
JM
19#include <float.h>
20
f9536db7
JM
21#define FUNC(function) function##l
22#define FLOAT long double
3c023dbf 23#define CFLOAT __complex__ long double
5878dd9d 24#define BUILD_COMPLEX(real, imag) (CMPLXL ((real), (imag)))
5f7b8f45 25#define PREFIX LDBL
bc9620d0
JM
26#if LDBL_MANT_DIG == DBL_MANT_DIG
27# define TYPE_STR "double"
28# define ULP_IDX ULP_DBL
0059122a
RS
29/* On architectures which redirect long double to _Float128 ABI, we must
30 choose the float128 ulps. Similarly, on such architectures, the ABI
31 used may be dependent on how the compiler was invoked. */
e2239af3 32#elif __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
0059122a
RS
33# define TYPE_STR "float128"
34# define ULP_IDX ULP_FLT128
bc9620d0
JM
35#else
36# define TYPE_STR "ldouble"
37# define ULP_IDX ULP_LDBL
bc9620d0 38#endif
5f7b8f45 39#define LIT(x) (x ## L)
84ba459d 40#define LITM(x) x ## l
06fea225 41#define FTOSTR strfroml
f82a4bdb 42#define snan_value_MACRO SNANL
3c023dbf 43#define TEST_FLOATN 0