diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-12-05 18:01:25 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-12-05 18:01:25 +0000 |
commit | 1f70eae4cf0ca826ddbc2b61720e8aeae1e13de4 (patch) | |
tree | 951fbc8d112991b5f7d7169e78f71ab2a1c04aa3 | |
parent | e2c4dce5350b8782d311467045c615734b2db270 (diff) | |
download | glibc-1f70eae4cf0ca826ddbc2b61720e8aeae1e13de4.tar.gz glibc-1f70eae4cf0ca826ddbc2b61720e8aeae1e13de4.tar.xz glibc-1f70eae4cf0ca826ddbc2b61720e8aeae1e13de4.zip |
Support defining strfromf64, strfromf32x aliases.
This patch adds support for defining strfromf64 and strfromf32x aliases of strfromd when the corresponding types are enabled. Tested for x86_64; also tested with build-many-glibcs.py in conjunction with other _Float64 / _Float32x changes. * stdlib/strfromd.c: Include <bits/floatn.h>. [__HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] (strfromf64): Define and later undefine as macro and define as weak alias. [__HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] (strfromf32x): Likewise.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | stdlib/strfromd.c | 25 |
2 files changed, 31 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 8ed099d037..bcc49a1dc5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2017-12-05 Joseph Myers <joseph@codesourcery.com> + * stdlib/strfromd.c: Include <bits/floatn.h>. + [__HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64] (strfromf64): Define + and later undefine as macro and define as weak alias. + [__HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X] (strfromf32x): + Likewise. + * math/test-float32x.h: New file. * math/test-float64.h: Likewise. diff --git a/stdlib/strfromd.c b/stdlib/strfromd.c index 5342059008..85c555540d 100644 --- a/stdlib/strfromd.c +++ b/stdlib/strfromd.c @@ -16,7 +16,32 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <bits/floatn.h> + #define FLOAT double #define STRFROM strfromd +#if __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64 +# define strfromf64 __hide_strfromf64 +#endif +#if __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X +# define strfromf32x __hide_strfromf32x +#endif + +#include <stdlib.h> + +#if __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64 +# undef strfromf64 +#endif +#if __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X +# undef strfromf32x +#endif + #include "strfrom-skeleton.c" + +#if __HAVE_FLOAT64 && !__HAVE_DISTINCT_FLOAT64 +weak_alias (strfromd, strfromf64) +#endif +#if __HAVE_FLOAT32X && !__HAVE_DISTINCT_FLOAT32X +weak_alias (strfromd, strfromf32x) +#endif |