diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-12-05 17:34:25 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-12-05 17:34:25 +0000 |
commit | e2c4dce5350b8782d311467045c615734b2db270 (patch) | |
tree | 59a8a7ebb04a436bc6486c21b3c86c7109543a27 | |
parent | f2d64d621e620b3b11fc4ed55f3e753ed6dc31e7 (diff) | |
download | glibc-e2c4dce5350b8782d311467045c615734b2db270.tar.gz glibc-e2c4dce5350b8782d311467045c615734b2db270.tar.xz glibc-e2c4dce5350b8782d311467045c615734b2db270.zip |
Add headers for _Float64, _Float32x testing.
This patch adds the headers required for testing _Float64 and _Float32x function aliases (using double ulps). The corresponding makefile support will be included in the patch that actually adds those aliases; there doesn't seem much point in adding makefile conditionals for testing something that will be available unconditionally. In conjunction with other _Float64 / _Float32x changes, test for x86_64 and with build-many-glibcs.py. * math/test-float32x.h: New file. * math/test-float64.h: Likewise.
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | math/test-float32x.h | 37 | ||||
-rw-r--r-- | math/test-float64.h | 37 |
3 files changed, 77 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index afe13d3f8f..8ed099d037 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2017-12-05 Joseph Myers <joseph@codesourcery.com> + * math/test-float32x.h: New file. + * math/test-float64.h: Likewise. + * sysdeps/generic/libm-alias-double.h: Include <bits/floatn.h>. (libm_alias_double_other_r_f64): New macro. (libm_alias_double_other_r_f32x): Likewise. diff --git a/math/test-float32x.h b/math/test-float32x.h new file mode 100644 index 0000000000..2d73958314 --- /dev/null +++ b/math/test-float32x.h @@ -0,0 +1,37 @@ +/* Common definitions for libm tests for _Float32x. + + Copyright (C) 2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +#include "test-math-floatn.h" + +/* Fixup builtins and constants for older compilers. */ +#include <bits/floatn.h> +#include <float.h> + +#define FUNC(function) function ## f32x +#define FLOAT _Float32x +#define CFLOAT __CFLOAT32X +#define BUILD_COMPLEX(real, imag) (CMPLXF32X ((real), (imag))) +#define PREFIX FLT32X +#define TYPE_STR "double" +#define ULP_IDX ULP_DBL +#define ULP_I_IDX ULP_I_DBL +#define LIT(x) __f32x (x) +#define LITM(x) x ## f32x +#define FTOSTR strfromf32x +#define snan_value_MACRO SNANF32X diff --git a/math/test-float64.h b/math/test-float64.h new file mode 100644 index 0000000000..8fff896f0d --- /dev/null +++ b/math/test-float64.h @@ -0,0 +1,37 @@ +/* Common definitions for libm tests for _Float64. + + Copyright (C) 2017 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ + +#include "test-math-floatn.h" + +/* Fixup builtins and constants for older compilers. */ +#include <bits/floatn.h> +#include <float.h> + +#define FUNC(function) function ## f64 +#define FLOAT _Float64 +#define CFLOAT __CFLOAT64 +#define BUILD_COMPLEX(real, imag) (CMPLXF64 ((real), (imag))) +#define PREFIX FLT64 +#define TYPE_STR "double" +#define ULP_IDX ULP_DBL +#define ULP_I_IDX ULP_I_DBL +#define LIT(x) __f64 (x) +#define LITM(x) x ## f64 +#define FTOSTR strfromf64 +#define snan_value_MACRO SNANF64 |