diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-opt')
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/Makefile | 6 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/nldbl-compat.h | 1 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/nldbl-fromfp.c | 26 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/nldbl-fromfpx.c | 26 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/nldbl-ufromfp.c | 26 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-opt/nldbl-ufromfpx.c | 26 |
6 files changed, 110 insertions, 1 deletions
diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile index 006d0d59ee..81429d0ddd 100644 --- a/sysdeps/ieee754/ldbl-opt/Makefile +++ b/sysdeps/ieee754/ldbl-opt/Makefile @@ -44,7 +44,7 @@ libnldbl-calls = asprintf dprintf fprintf fscanf fwprintf fwscanf iovfscanf \ isoc99_vwscanf isoc99_vfwscanf isoc99_vswscanf \ nextup nextdown totalorder totalordermag getpayload \ canonicalize setpayload setpayloadsig llogb fmaxmag fminmag \ - roundeven + roundeven fromfp ufromfp fromfpx ufromfpx libnldbl-routines = $(libnldbl-calls:%=nldbl-%) libnldbl-inhibit-o = $(object-suffixes) libnldbl-static-only-routines = $(libnldbl-routines) @@ -103,6 +103,8 @@ CFLAGS-nldbl-fmin.c = -fno-builtin-fminl CFLAGS-nldbl-fminmag.c = -fno-builtin-fminmagl CFLAGS-nldbl-fmod.c = -fno-builtin-fmodl CFLAGS-nldbl-frexp.c = -fno-builtin-frexpl +CFLAGS-nldbl-fromfp.c = -fno-builtin-fromfpl +CFLAGS-nldbl-fromfpx.c = -fno-builtin-fromfpxl CFLAGS-nldbl-gamma.c = -fno-builtin-gammal CFLAGS-nldbl-getpayload.c = -fno-builtin-getpayloadl CFLAGS-nldbl-hypot.c = -fno-builtin-hypotl @@ -156,6 +158,8 @@ CFLAGS-nldbl-tgamma.c = -fno-builtin-tgammal CFLAGS-nldbl-totalorder.c = -fno-builtin-totalorderl CFLAGS-nldbl-totalordermag.c = -fno-builtin-totalordermagl CFLAGS-nldbl-trunc.c = -fno-builtin-truncl +CFLAGS-nldbl-ufromfp.c = -fno-builtin-ufromfpl +CFLAGS-nldbl-ufromfpx.c = -fno-builtin-ufromfpxl CFLAGS-nldbl-y0.c = -fno-builtin-y0l CFLAGS-nldbl-y1.c = -fno-builtin-y1l CFLAGS-nldbl-yn.c = -fno-builtin-ynl diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-compat.h b/sysdeps/ieee754/ldbl-opt/nldbl-compat.h index 0c3c5ad24d..b6cd2993bf 100644 --- a/sysdeps/ieee754/ldbl-opt/nldbl-compat.h +++ b/sysdeps/ieee754/ldbl-opt/nldbl-compat.h @@ -24,6 +24,7 @@ #define __NO_LONG_DOUBLE_MATH 1 #include <stdarg.h> #include <stdlib.h> +#include <stdint.h> #include <stdio.h> #include <printf.h> #include <wchar.h> diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fromfp.c b/sysdeps/ieee754/ldbl-opt/nldbl-fromfp.c new file mode 100644 index 0000000000..a05f1b3462 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fromfp.c @@ -0,0 +1,26 @@ +/* Compatibility routine for IEEE double as long double for fromfp. + Copyright (C) 2016 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 "nldbl-compat.h" + +intmax_t +attribute_hidden +fromfpl (double x, int round, unsigned int width) +{ + return fromfp (x, round, width); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-fromfpx.c b/sysdeps/ieee754/ldbl-opt/nldbl-fromfpx.c new file mode 100644 index 0000000000..198e1203d5 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-fromfpx.c @@ -0,0 +1,26 @@ +/* Compatibility routine for IEEE double as long double for fromfpx. + Copyright (C) 2016 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 "nldbl-compat.h" + +intmax_t +attribute_hidden +fromfpxl (double x, int round, unsigned int width) +{ + return fromfpx (x, round, width); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ufromfp.c b/sysdeps/ieee754/ldbl-opt/nldbl-ufromfp.c new file mode 100644 index 0000000000..b20a972537 --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ufromfp.c @@ -0,0 +1,26 @@ +/* Compatibility routine for IEEE double as long double for ufromfp. + Copyright (C) 2016 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 "nldbl-compat.h" + +uintmax_t +attribute_hidden +ufromfpl (double x, int round, unsigned int width) +{ + return ufromfp (x, round, width); +} diff --git a/sysdeps/ieee754/ldbl-opt/nldbl-ufromfpx.c b/sysdeps/ieee754/ldbl-opt/nldbl-ufromfpx.c new file mode 100644 index 0000000000..e1b4cead5a --- /dev/null +++ b/sysdeps/ieee754/ldbl-opt/nldbl-ufromfpx.c @@ -0,0 +1,26 @@ +/* Compatibility routine for IEEE double as long double for ufromfpx. + Copyright (C) 2016 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 "nldbl-compat.h" + +uintmax_t +attribute_hidden +ufromfpxl (double x, int round, unsigned int width) +{ + return ufromfpx (x, round, width); +} |