aboutsummaryrefslogtreecommitdiff
path: root/stdlib
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2018-05-16 06:03:08 +0200
committerFlorian Weimer <fweimer@redhat.com>2018-05-16 06:03:08 +0200
commit9761bf4dfae04016bccaa82414719523b090dd60 (patch)
tree1abcf3d350f8540e87f3850cb111a13cfaf66d8f /stdlib
parentAdd narrowing multiply functions. (diff)
downloadglibc-9761bf4dfae04016bccaa82414719523b090dd60.tar.gz
glibc-9761bf4dfae04016bccaa82414719523b090dd60.tar.bz2
glibc-9761bf4dfae04016bccaa82414719523b090dd60.zip
math: Merge strtod_nan_*.h into math-type-macros-*.h
This change will eventually make it possible to compile stdlib/strtod_nan_main.c as part of math/s_nan_template.c.
Diffstat (limited to 'stdlib')
-rw-r--r--stdlib/strtod_nan.c2
-rw-r--r--stdlib/strtod_nan_double.h30
-rw-r--r--stdlib/strtod_nan_float.h29
-rw-r--r--stdlib/strtod_nan_main.c2
-rw-r--r--stdlib/strtof_nan.c2
-rw-r--r--stdlib/strtold_nan.c2
6 files changed, 4 insertions, 63 deletions
diff --git a/stdlib/strtod_nan.c b/stdlib/strtod_nan.c
index f64fec1897..c5876b59a0 100644
--- a/stdlib/strtod_nan.c
+++ b/stdlib/strtod_nan.c
@@ -18,7 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <strtod_nan_narrow.h>
-#include <strtod_nan_double.h>
+#include <math-type-macros-double.h>
#define STRTOD_NAN __strtod_nan
#include <strtod_nan_main.c>
diff --git a/stdlib/strtod_nan_double.h b/stdlib/strtod_nan_double.h
deleted file mode 100644
index d76a03bbe7..0000000000
--- a/stdlib/strtod_nan_double.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Convert string for NaN payload to corresponding NaN. For double.
- Copyright (C) 1997-2018 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define FLOAT double
-#define SET_MANTISSA(flt, mant) \
- do \
- { \
- union ieee754_double u; \
- u.d = (flt); \
- u.ieee_nan.mantissa0 = (mant) >> 32; \
- u.ieee_nan.mantissa1 = (mant); \
- if ((u.ieee.mantissa0 | u.ieee.mantissa1) != 0) \
- (flt) = u.d; \
- } \
- while (0)
diff --git a/stdlib/strtod_nan_float.h b/stdlib/strtod_nan_float.h
deleted file mode 100644
index 80249d6fab..0000000000
--- a/stdlib/strtod_nan_float.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Convert string for NaN payload to corresponding NaN. For float.
- Copyright (C) 1997-2018 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define FLOAT float
-#define SET_MANTISSA(flt, mant) \
- do \
- { \
- union ieee754_float u; \
- u.f = (flt); \
- u.ieee_nan.mantissa = (mant); \
- if (u.ieee.mantissa != 0) \
- (flt) = u.f; \
- } \
- while (0)
diff --git a/stdlib/strtod_nan_main.c b/stdlib/strtod_nan_main.c
index 12f6e7383d..80ecb78572 100644
--- a/stdlib/strtod_nan_main.c
+++ b/stdlib/strtod_nan_main.c
@@ -52,7 +52,7 @@ STRTOD_NAN (const STRING_TYPE *str, STRING_TYPE **endptr, STRING_TYPE endc)
mant = STRTOULL (str, &endp, 0);
if (endp == cp)
- SET_MANTISSA (retval, mant);
+ SET_NAN_PAYLOAD (retval, mant);
out:
if (endptr != NULL)
diff --git a/stdlib/strtof_nan.c b/stdlib/strtof_nan.c
index ea3decb729..f085c5b4fb 100644
--- a/stdlib/strtof_nan.c
+++ b/stdlib/strtof_nan.c
@@ -18,7 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <strtod_nan_narrow.h>
-#include <strtod_nan_float.h>
+#include <math-type-macros-float.h>
#define STRTOD_NAN __strtof_nan
#include <strtod_nan_main.c>
diff --git a/stdlib/strtold_nan.c b/stdlib/strtold_nan.c
index d4bbcc0a8b..eadfe546e2 100644
--- a/stdlib/strtold_nan.c
+++ b/stdlib/strtold_nan.c
@@ -23,7 +23,7 @@
representation. */
#ifndef __NO_LONG_DOUBLE_MATH
# include <strtod_nan_narrow.h>
-# include <strtod_nan_ldouble.h>
+# include <math-type-macros-ldouble.h>
# define STRTOD_NAN __strtold_nan
# include <strtod_nan_main.c>