summaryrefslogtreecommitdiff
path: root/sysdeps/sparc/fpu
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/sparc/fpu')
-rw-r--r--sysdeps/sparc/fpu/bits/fenv.h101
-rw-r--r--sysdeps/sparc/fpu/bits/mathinline.h290
-rw-r--r--sysdeps/sparc/fpu/fclrexcpt.c43
-rw-r--r--sysdeps/sparc/fpu/fedisblxcpt.c35
-rw-r--r--sysdeps/sparc/fpu/feenablxcpt.c35
-rw-r--r--sysdeps/sparc/fpu/fegetenv.c38
-rw-r--r--sysdeps/sparc/fpu/fegetexcept.c29
-rw-r--r--sysdeps/sparc/fpu/fegetmode.c26
-rw-r--r--sysdeps/sparc/fpu/fegetround.c32
-rw-r--r--sysdeps/sparc/fpu/feholdexcpt.c37
-rw-r--r--sysdeps/sparc/fpu/fenv_private.h182
-rw-r--r--sysdeps/sparc/fpu/fesetenv.c55
-rw-r--r--sysdeps/sparc/fpu/fesetexcept.c31
-rw-r--r--sysdeps/sparc/fpu/fesetmode.c38
-rw-r--r--sysdeps/sparc/fpu/fesetround.c39
-rw-r--r--sysdeps/sparc/fpu/feupdateenv.c50
-rw-r--r--sysdeps/sparc/fpu/fgetexcptflg.c41
-rw-r--r--sysdeps/sparc/fpu/fpu_control.h72
-rw-r--r--sysdeps/sparc/fpu/fraiseexcpt.c91
-rw-r--r--sysdeps/sparc/fpu/fsetexcptflg.c44
-rw-r--r--sysdeps/sparc/fpu/ftestexcept.c30
-rw-r--r--sysdeps/sparc/fpu/libm-test-ulps2262
-rw-r--r--sysdeps/sparc/fpu/libm-test-ulps-name1
-rw-r--r--sysdeps/sparc/fpu/math_private.h7
24 files changed, 0 insertions, 3609 deletions
diff --git a/sysdeps/sparc/fpu/bits/fenv.h b/sysdeps/sparc/fpu/bits/fenv.h
deleted file mode 100644
index 95e37d0b2c..0000000000
--- a/sysdeps/sparc/fpu/bits/fenv.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Copyright (C) 1997-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/>. */
-
-#ifndef _FENV_H
-# error "Never use <bits/fenv.h> directly; include <fenv.h> instead."
-#endif
-
-#include <bits/wordsize.h>
-
-
-/* Define bits representing the exception. We use the bit positions
- of the appropriate accrued exception bits from the FSR. */
-enum
- {
- FE_INVALID =
-#define FE_INVALID (1 << 9)
- FE_INVALID,
- FE_OVERFLOW =
-#define FE_OVERFLOW (1 << 8)
- FE_OVERFLOW,
- FE_UNDERFLOW =
-#define FE_UNDERFLOW (1 << 7)
- FE_UNDERFLOW,
- FE_DIVBYZERO =
-#define FE_DIVBYZERO (1 << 6)
- FE_DIVBYZERO,
- FE_INEXACT =
-#define FE_INEXACT (1 << 5)
- FE_INEXACT
- };
-
-#define FE_ALL_EXCEPT \
- (FE_INEXACT | FE_DIVBYZERO | FE_UNDERFLOW | FE_OVERFLOW | FE_INVALID)
-
-/* The Sparc FPU supports all of the four defined rounding modes. We
- use again the bit positions in the FPU control word as the values
- for the appropriate macros. */
-enum
- {
- FE_TONEAREST =
-#define FE_TONEAREST (0 << 30)
- FE_TONEAREST,
- FE_TOWARDZERO =
-#define FE_TOWARDZERO (1 << 30)
- FE_TOWARDZERO,
- FE_UPWARD =
-#define FE_UPWARD (-0x7fffffff - 1) /* (2 << 30) */
- FE_UPWARD,
- FE_DOWNWARD =
-#define FE_DOWNWARD (-0x40000000) /* (3 << 30) */
- FE_DOWNWARD
- };
-
-#define __FE_ROUND_MASK (3U << 30)
-
-
-/* Type representing exception flags. */
-typedef unsigned long int fexcept_t;
-
-
-/* Type representing floating-point environment. */
-typedef unsigned long int fenv_t;
-
-/* If the default argument is used we use this value. */
-#define FE_DFL_ENV ((const fenv_t *) -1)
-
-#ifdef __USE_GNU
-/* Floating-point environment where none of the exception is masked. */
-# define FE_NOMASK_ENV ((const fenv_t *) -2)
-#endif
-
-/* For internal use only: access the fp state register. */
-#if __WORDSIZE == 64
-# define __fenv_stfsr(X) __asm__ __volatile__ ("stx %%fsr,%0" : "=m" (X))
-# define __fenv_ldfsr(X) __asm__ __volatile__ ("ldx %0,%%fsr" : : "m" (X))
-#else
-# define __fenv_stfsr(X) __asm__ __volatile__ ("st %%fsr,%0" : "=m" (X))
-# define __fenv_ldfsr(X) __asm__ __volatile__ ("ld %0,%%fsr" : : "m" (X))
-#endif
-
-#if __GLIBC_USE (IEC_60559_BFP_EXT)
-/* Type representing floating-point control modes. */
-typedef unsigned long int femode_t;
-
-/* Default floating-point control modes. */
-# define FE_DFL_MODE ((const femode_t *) -1L)
-#endif
diff --git a/sysdeps/sparc/fpu/bits/mathinline.h b/sysdeps/sparc/fpu/bits/mathinline.h
deleted file mode 100644
index 60a2028f2c..0000000000
--- a/sysdeps/sparc/fpu/bits/mathinline.h
+++ /dev/null
@@ -1,290 +0,0 @@
-/* Inline math functions for SPARC.
- Copyright (C) 1999-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jakub@redhat.com>.
-
- 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/>. */
-
-#ifndef _MATH_H
-# error "Never use <bits/mathinline.h> directly; include <math.h> instead."
-#endif
-
-#include <bits/wordsize.h>
-
-#ifdef __GNUC__
-
-#if defined __USE_ISOC99 && !__GNUC_PREREQ (3, 0)
-# undef isgreater
-# undef isgreaterequal
-# undef isless
-# undef islessequal
-# undef islessgreater
-# undef isunordered
-
-# if __WORDSIZE == 32
-
-# ifndef __NO_LONG_DOUBLE_MATH
-
-# define __unordered_cmp(x, y) \
- (__extension__ \
- ({ unsigned __r; \
- if (sizeof (x) == 4 && sizeof (y) == 4) \
- { \
- float __x = (x); float __y = (y); \
- __asm__ ("fcmps %1,%2; st %%fsr, %0" : "=m" (__r) : "f" (__x), \
- "f" (__y) : "cc"); \
- } \
- else if (sizeof (x) <= 8 && sizeof (y) <= 8) \
- { \
- double __x = (x); double __y = (y); \
- __asm__ ("fcmpd\t%1,%2\n\tst\t%%fsr,%0" : "=m" (__r) : "f" (__x), \
- "f" (__y) : "cc"); \
- } \
- else \
- { \
- long double __x = (x); long double __y = (y); \
- extern int _Q_cmp (const long double a, const long double b); \
- __r = _Q_cmp (__x, __y) << 10; \
- } \
- __r; }))
-
-# else
-
-# define __unordered_cmp(x, y) \
- (__extension__ \
- ({ unsigned __r; \
- if (sizeof (x) == 4 && sizeof (y) == 4) \
- { \
- float __x = (x); float __y = (y); \
- __asm__ ("fcmps %1,%2; st %%fsr, %0" : "=m" (__r) : "f" (__x), \
- "f" (__y) : "cc"); \
- } \
- else \
- { \
- double __x = (x); double __y = (y); \
- __asm__ ("fcmpd\t%1,%2\n\tst\t%%fsr,%0" : "=m" (__r) : "f" (__x), \
- "f" (__y) : "cc"); \
- } \
- __r; }))
-
-# endif
-
-# define isgreater(x, y) ((__unordered_cmp (x, y) & (3 << 10)) == (2 << 10))
-# define isgreaterequal(x, y) ((__unordered_cmp (x, y) & (1 << 10)) == 0)
-# define isless(x, y) ((__unordered_cmp (x, y) & (3 << 10)) == (1 << 10))
-# define islessequal(x, y) ((__unordered_cmp (x, y) & (2 << 10)) == 0)
-# define islessgreater(x, y) (((__unordered_cmp (x, y) + (1 << 10)) & (2 << 10)) != 0)
-# define isunordered(x, y) ((__unordered_cmp (x, y) & (3 << 10)) == (3 << 10))
-
-# else /* sparc64 */
-
-# define __unordered_v9cmp(x, y, op, qop) \
- (__extension__ \
- ({ unsigned __r; \
- if (sizeof (x) == 4 && sizeof (y) == 4) \
- { \
- float __x = (x); float __y = (y); \
- __asm__ ("fcmps\t%%fcc3,%1,%2\n\tmov" op "\t%%fcc3,1,%0" \
- : "=r" (__r) : "f" (__x), "f" (__y), "0" (0) : "cc"); \
- } \
- else if (sizeof (x) <= 8 && sizeof (y) <= 8) \
- { \
- double __x = (x); double __y = (y); \
- __asm__ ("fcmpd\t%%fcc3,%1,%2\n\tmov" op "\t%%fcc3,1,%0" \
- : "=r" (__r) : "f" (__x), "f" (__y), "0" (0) : "cc"); \
- } \
- else \
- { \
- long double __x = (x); long double __y = (y); \
- extern int _Qp_cmp (const long double *a, const long double *b); \
- __r = qop; \
- } \
- __r; }))
-
-# define isgreater(x, y) __unordered_v9cmp(x, y, "g", _Qp_cmp (&__x, &__y) == 2)
-# define isgreaterequal(x, y) __unordered_v9cmp(x, y, "ge", (_Qp_cmp (&__x, &__y) & 1) == 0)
-# define isless(x, y) __unordered_v9cmp(x, y, "l", _Qp_cmp (&__x, &__y) == 1)
-# define islessequal(x, y) __unordered_v9cmp(x, y, "le", (_Qp_cmp (&__x, &__y) & 2) == 0)
-# define islessgreater(x, y) __unordered_v9cmp(x, y, "lg", ((_Qp_cmp (&__x, &__y) + 1) & 2) != 0)
-# define isunordered(x, y) __unordered_v9cmp(x, y, "u", _Qp_cmp (&__x, &__y) == 3)
-
-# endif /* sparc64 */
-
-#endif /* __USE_ISOC99 */
-
-#if (!defined __NO_MATH_INLINES || defined __LIBC_INTERNAL_MATH_INLINES) && defined __OPTIMIZE__
-
-# ifndef __extern_inline
-# define __MATH_INLINE __inline
-# else
-# define __MATH_INLINE __extern_inline
-# endif /* __cplusplus */
-
-/* The gcc, version 2.7 or below, has problems with all this inlining
- code. So disable it for this version of the compiler. */
-# if __GNUC_PREREQ (2, 8)
-
-# ifdef __USE_ISOC99
-
-/* Test for negative number. Used in the signbit() macro. */
-__MATH_INLINE int
-__NTH (__signbitf (float __x))
-{
- __extension__ union { float __f; int __i; } __u = { __f: __x };
- return __u.__i < 0;
-}
-
-# if __WORDSIZE == 32
-
-__MATH_INLINE int
-__NTH (__signbit (double __x))
-{
- __extension__ union { double __d; int __i[2]; } __u = { __d: __x };
- return __u.__i[0] < 0;
-}
-
-# ifndef __NO_LONG_DOUBLE_MATH
-__MATH_INLINE int
-__NTH (__signbitl (long double __x))
-{
- __extension__ union { long double __l; int __i[4]; } __u = { __l: __x };
- return __u.__i[0] < 0;
-}
-# else
-__MATH_INLINE int
-__NTH (__signbitl (long double __x))
-{
- return __signbit ((double)__x);
-}
-# endif
-
-# else /* sparc64 */
-
-__MATH_INLINE int
-__NTH (__signbit (double __x))
-{
- __extension__ union { double __d; long int __i; } __u = { __d: __x };
- return __u.__i < 0;
-}
-
-__MATH_INLINE int
-__NTH (__signbitl (long double __x))
-{
- __extension__ union { long double __l; long int __i[2]; } __u = { __l: __x };
- return __u.__i[0] < 0;
-}
-
-# endif /* sparc64 */
-
-# endif /* __USE_ISOC99 */
-
-# if !defined __NO_MATH_INLINES && !__GNUC_PREREQ (3, 2)
-
-__MATH_INLINE double
-__NTH (sqrt (double __x))
-{
- register double __r;
- __asm ("fsqrtd %1,%0" : "=f" (__r) : "f" (__x));
- return __r;
-}
-
-__MATH_INLINE float
-__NTH (sqrtf (float __x))
-{
- register float __r;
- __asm ("fsqrts %1,%0" : "=f" (__r) : "f" (__x));
- return __r;
-}
-
-# if __WORDSIZE == 64
-__MATH_INLINE long double
-__NTH (sqrtl (long double __x))
-{
- long double __r;
- extern void _Qp_sqrt (long double *, const long double *);
- _Qp_sqrt (&__r, &__x);
- return __r;
-}
-# elif !defined __NO_LONG_DOUBLE_MATH
-__MATH_INLINE long double
-sqrtl (long double __x) __THROW
-{
- extern long double _Q_sqrt (const long double);
- return _Q_sqrt (__x);
-}
-# endif /* sparc64 */
-
-# endif /* !__NO_MATH_INLINES && !GCC 3.2+ */
-
-/* This code is used internally in the GNU libc. */
-# ifdef __LIBC_INTERNAL_MATH_INLINES
-__MATH_INLINE double
-__ieee754_sqrt (double __x)
-{
- register double __r;
- __asm ("fsqrtd %1,%0" : "=f" (__r) : "f" (__x));
- return __r;
-}
-
-__MATH_INLINE float
-__ieee754_sqrtf (float __x)
-{
- register float __r;
- __asm ("fsqrts %1,%0" : "=f" (__r) : "f" (__x));
- return __r;
-}
-
-# if __WORDSIZE == 64
-__MATH_INLINE long double
-__ieee754_sqrtl (long double __x)
-{
- long double __r;
- extern void _Qp_sqrt (long double *, const long double *);
- _Qp_sqrt(&__r, &__x);
- return __r;
-}
-# elif !defined __NO_LONG_DOUBLE_MATH
-__MATH_INLINE long double
-__ieee754_sqrtl (long double __x)
-{
- extern long double _Q_sqrt (const long double);
- return _Q_sqrt (__x);
-}
-# endif /* sparc64 */
-# endif /* __LIBC_INTERNAL_MATH_INLINES */
-# endif /* gcc 2.8+ */
-
-# ifdef __USE_ISOC99
-
-# ifndef __NO_MATH_INLINES
-
-__MATH_INLINE double __NTH (fdim (double __x, double __y));
-__MATH_INLINE double
-__NTH (fdim (double __x, double __y))
-{
- return __x <= __y ? 0 : __x - __y;
-}
-
-__MATH_INLINE float __NTH (fdimf (float __x, float __y));
-__MATH_INLINE float
-__NTH (fdimf (float __x, float __y))
-{
- return __x <= __y ? 0 : __x - __y;
-}
-
-# endif /* !__NO_MATH_INLINES */
-# endif /* __USE_ISOC99 */
-#endif /* !__NO_MATH_INLINES && __OPTIMIZE__ */
-#endif /* __GNUC__ */
diff --git a/sysdeps/sparc/fpu/fclrexcpt.c b/sysdeps/sparc/fpu/fclrexcpt.c
deleted file mode 100644
index 16ca6b64fc..0000000000
--- a/sysdeps/sparc/fpu/fclrexcpt.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Clear given exceptions in current floating-point environment.
- Copyright (C) 1997-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 <fenv.h>
-#include <shlib-compat.h>
-
-int
-__feclearexcept (int excepts)
-{
- fenv_t tmp;
-
- __fenv_stfsr (tmp);
-
- tmp &= ~(excepts & FE_ALL_EXCEPT);
-
- __fenv_ldfsr (tmp);
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__feclearexcept, __old_feclearexcept)
-compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1);
-#endif
-
-libm_hidden_ver (__feclearexcept, feclearexcept)
-versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/fedisblxcpt.c b/sysdeps/sparc/fpu/fedisblxcpt.c
deleted file mode 100644
index 74d1722093..0000000000
--- a/sysdeps/sparc/fpu/fedisblxcpt.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Disable floating-point exceptions.
- Copyright (C) 2000-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jakub@redhat.com>, 2000.
-
- 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 <fenv.h>
-
-int
-fedisableexcept (int excepts)
-{
- fenv_t new_exc, old_exc;
-
- __fenv_stfsr (new_exc);
-
- old_exc = (new_exc >> 18) & FE_ALL_EXCEPT;
- new_exc &= ~(((fenv_t)excepts & FE_ALL_EXCEPT) << 18);
-
- __fenv_ldfsr (new_exc);
-
- return old_exc;
-}
diff --git a/sysdeps/sparc/fpu/feenablxcpt.c b/sysdeps/sparc/fpu/feenablxcpt.c
deleted file mode 100644
index 64e2f04eaf..0000000000
--- a/sysdeps/sparc/fpu/feenablxcpt.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* Enable floating-point exceptions.
- Copyright (C) 2000-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jakub@redhat.com>, 2000.
-
- 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 <fenv.h>
-
-int
-feenableexcept (int excepts)
-{
- fenv_t new_exc, old_exc;
-
- __fenv_stfsr (new_exc);
-
- old_exc = (new_exc >> 18) & FE_ALL_EXCEPT;
- new_exc |= (((fenv_t)excepts & FE_ALL_EXCEPT) << 18);
-
- __fenv_ldfsr (new_exc);
-
- return old_exc;
-}
diff --git a/sysdeps/sparc/fpu/fegetenv.c b/sysdeps/sparc/fpu/fegetenv.c
deleted file mode 100644
index c497d2d72c..0000000000
--- a/sysdeps/sparc/fpu/fegetenv.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Store current floating-point environment.
- Copyright (C) 1997-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 <fenv.h>
-#include <shlib-compat.h>
-
-int
-__fegetenv (fenv_t *envp)
-{
- __fenv_stfsr (*envp);
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__fegetenv, __old_fegetenv)
-compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1);
-#endif
-
-libm_hidden_def (__fegetenv)
-libm_hidden_ver (__fegetenv, fegetenv)
-versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/fegetexcept.c b/sysdeps/sparc/fpu/fegetexcept.c
deleted file mode 100644
index 77afc73e0f..0000000000
--- a/sysdeps/sparc/fpu/fegetexcept.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Get enabled floating-point exceptions.
- Copyright (C) 2000-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Jakub Jelinek <jakub@redhat.com>, 2000.
-
- 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 <fenv.h>
-
-int
-fegetexcept (void)
-{
- fenv_t exc;
- __fenv_stfsr (exc);
-
- return (exc >> 18) & FE_ALL_EXCEPT;
-}
diff --git a/sysdeps/sparc/fpu/fegetmode.c b/sysdeps/sparc/fpu/fegetmode.c
deleted file mode 100644
index 53294dd542..0000000000
--- a/sysdeps/sparc/fpu/fegetmode.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/* Store current floating-point control modes. SPARC version.
- Copyright (C) 2016-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 <fenv.h>
-
-int
-fegetmode (femode_t *modep)
-{
- __fenv_stfsr (*modep);
- return 0;
-}
diff --git a/sysdeps/sparc/fpu/fegetround.c b/sysdeps/sparc/fpu/fegetround.c
deleted file mode 100644
index d1225df652..0000000000
--- a/sysdeps/sparc/fpu/fegetround.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/* Return current rounding direction.
- Copyright (C) 1997-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 <fenv.h>
-
-int
-__fegetround (void)
-{
- fenv_t tmp;
-
- __fenv_stfsr (tmp);
-
- return tmp & __FE_ROUND_MASK;
-}
-libm_hidden_def (__fegetround)
-weak_alias (__fegetround, fegetround)
-libm_hidden_weak (fegetround)
diff --git a/sysdeps/sparc/fpu/feholdexcpt.c b/sysdeps/sparc/fpu/feholdexcpt.c
deleted file mode 100644
index 8a712d892f..0000000000
--- a/sysdeps/sparc/fpu/feholdexcpt.c
+++ /dev/null
@@ -1,37 +0,0 @@
-/* Store current floating-point environment and clear exceptions.
- Copyright (C) 1997-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 <fenv.h>
-
-int
-__feholdexcept (fenv_t *envp)
-{
- fenv_t tmp;
-
- __fenv_stfsr (*envp);
-
- /* Set all exceptions to non-stop and clear all exceptions. */
- tmp = *envp & ~((0x1f << 23) | FE_ALL_EXCEPT);
-
- __fenv_ldfsr (tmp);
-
- return 0;
-}
-libm_hidden_def (__feholdexcept)
-weak_alias (__feholdexcept, feholdexcept)
-libm_hidden_weak (feholdexcept)
diff --git a/sysdeps/sparc/fpu/fenv_private.h b/sysdeps/sparc/fpu/fenv_private.h
deleted file mode 100644
index 29b5d123cf..0000000000
--- a/sysdeps/sparc/fpu/fenv_private.h
+++ /dev/null
@@ -1,182 +0,0 @@
-#ifndef FENV_PRIVATE_H
-#define FENV_PRIVATE_H 1
-
-#include <fenv.h>
-
-static __always_inline void
-libc_feholdexcept (fenv_t *e)
-{
- fenv_t etmp;
- __fenv_stfsr(etmp);
- *(e) = etmp;
- etmp = etmp & ~((0x1f << 23) | FE_ALL_EXCEPT);
- __fenv_ldfsr(etmp);
-}
-
-static __always_inline void
-libc_fesetround (int r)
-{
- fenv_t etmp;
- __fenv_stfsr(etmp);
- etmp = (etmp & ~__FE_ROUND_MASK) | (r);
- __fenv_ldfsr(etmp);
-}
-
-static __always_inline void
-libc_feholdexcept_setround (fenv_t *e, int r)
-{
- fenv_t etmp;
- __fenv_stfsr(etmp);
- *(e) = etmp;
- etmp = etmp & ~((0x1f << 23) | FE_ALL_EXCEPT);
- etmp = (etmp & ~__FE_ROUND_MASK) | (r);
- __fenv_ldfsr(etmp);
-}
-
-static __always_inline int
-libc_fetestexcept (int e)
-{
- fenv_t etmp;
- __fenv_stfsr(etmp);
- return etmp & (e) & FE_ALL_EXCEPT;
-}
-
-static __always_inline void
-libc_fesetenv (fenv_t *e)
-{
- __fenv_ldfsr(*e);
-}
-
-static __always_inline int
-libc_feupdateenv_test (fenv_t *e, int ex)
-{
- fenv_t etmp;
-
- __fenv_stfsr(etmp);
- etmp &= FE_ALL_EXCEPT;
-
- __fenv_ldfsr(*e);
-
- __feraiseexcept (etmp);
-
- return etmp & ex;
-}
-
-static __always_inline void
-libc_feupdateenv (fenv_t *e)
-{
- libc_feupdateenv_test (e, 0);
-}
-
-static __always_inline void
-libc_feholdsetround (fenv_t *e, int r)
-{
- fenv_t etmp;
- __fenv_stfsr(etmp);
- *(e) = etmp;
- etmp = (etmp & ~__FE_ROUND_MASK) | (r);
- __fenv_ldfsr(etmp);
-}
-
-static __always_inline void
-libc_feresetround (fenv_t *e)
-{
- fenv_t etmp;
- __fenv_stfsr(etmp);
- etmp = (etmp & ~__FE_ROUND_MASK) | (*e & __FE_ROUND_MASK);
- __fenv_ldfsr(etmp);
-}
-
-#define libc_feholdexceptf libc_feholdexcept
-#define libc_fesetroundf libc_fesetround
-#define libc_feholdexcept_setroundf libc_feholdexcept_setround
-#define libc_fetestexceptf libc_fetestexcept
-#define libc_fesetenvf libc_fesetenv
-#define libc_feupdateenv_testf libc_feupdateenv_test
-#define libc_feupdateenvf libc_feupdateenv
-#define libc_feholdsetroundf libc_feholdsetround
-#define libc_feresetroundf libc_feresetround
-#define libc_feholdexcept libc_feholdexcept
-#define libc_fesetround libc_fesetround
-#define libc_feholdexcept_setround libc_feholdexcept_setround
-#define libc_fetestexcept libc_fetestexcept
-#define libc_fesetenv libc_fesetenv
-#define libc_feupdateenv_test libc_feupdateenv_test
-#define libc_feupdateenv libc_feupdateenv
-#define libc_feholdsetround libc_feholdsetround
-#define libc_feresetround libc_feresetround
-#define libc_feholdexceptl libc_feholdexcept
-#define libc_fesetroundl libc_fesetround
-#define libc_feholdexcept_setroundl libc_feholdexcept_setround
-#define libc_fetestexceptl libc_fetestexcept
-#define libc_fesetenvl libc_fesetenv
-#define libc_feupdateenv_testl libc_feupdateenv_test
-#define libc_feupdateenvl libc_feupdateenv
-#define libc_feholdsetroundl libc_feholdsetround
-#define libc_feresetroundl libc_feresetround
-
-/* We have support for rounding mode context. */
-#define HAVE_RM_CTX 1
-
-static __always_inline void
-libc_feholdexcept_setround_sparc_ctx (struct rm_ctx *ctx, int round)
-{
- fenv_t new;
-
- __fenv_stfsr(ctx->env);
- new = ctx->env & ~((0x1f << 23) | FE_ALL_EXCEPT);
- new = (new & ~__FE_ROUND_MASK) | round;
- if (__glibc_unlikely (new != ctx->env))
- {
- __fenv_ldfsr(new);
- ctx->updated_status = true;
- }
- else
- ctx->updated_status = false;
-}
-
-static __always_inline void
-libc_fesetenv_sparc_ctx (struct rm_ctx *ctx)
-{
- libc_fesetenv(&ctx->env);
-}
-
-static __always_inline void
-libc_feupdateenv_sparc_ctx (struct rm_ctx *ctx)
-{
- if (__glibc_unlikely (ctx->updated_status))
- libc_feupdateenv_test (&ctx->env, 0);
-}
-
-static __always_inline void
-libc_feholdsetround_sparc_ctx (struct rm_ctx *ctx, int round)
-{
- fenv_t new;
-
- __fenv_stfsr(ctx->env);
- new = (ctx->env & ~__FE_ROUND_MASK) | round;
- if (__glibc_unlikely (new != ctx->env))
- {
- __fenv_ldfsr(new);
- ctx->updated_status = true;
- }
- else
- ctx->updated_status = false;
-}
-#define libc_feholdexcept_setround_ctx libc_feholdexcept_setround_sparc_ctx
-#define libc_feholdexcept_setroundf_ctx libc_feholdexcept_setround_sparc_ctx
-#define libc_feholdexcept_setroundl_ctx libc_feholdexcept_setround_sparc_ctx
-#define libc_fesetenv_ctx libc_fesetenv_sparc_ctx
-#define libc_fesetenvf_ctx libc_fesetenv_sparc_ctx
-#define libc_fesetenvl_ctx libc_fesetenv_sparc_ctx
-#define libc_feupdateenv_ctx libc_feupdateenv_sparc_ctx
-#define libc_feupdateenvf_ctx libc_feupdateenv_sparc_ctx
-#define libc_feupdateenvl_ctx libc_feupdateenv_sparc_ctx
-#define libc_feresetround_ctx libc_feupdateenv_sparc_ctx
-#define libc_feresetroundf_ctx libc_feupdateenv_sparc_ctx
-#define libc_feresetroundl_ctx libc_feupdateenv_sparc_ctx
-#define libc_feholdsetround_ctx libc_feholdsetround_sparc_ctx
-#define libc_feholdsetroundf_ctx libc_feholdsetround_sparc_ctx
-#define libc_feholdsetroundl_ctx libc_feholdsetround_sparc_ctx
-
-#endif /* FENV_PRIVATE_H */
diff --git a/sysdeps/sparc/fpu/fesetenv.c b/sysdeps/sparc/fpu/fesetenv.c
deleted file mode 100644
index 22b80e22ea..0000000000
--- a/sysdeps/sparc/fpu/fesetenv.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Install given floating-point environment.
- Copyright (C) 1997-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 <fenv.h>
-#include <shlib-compat.h>
-
-int
-__fesetenv (const fenv_t *envp)
-{
- fenv_t dummy;
-
- /* Put these constants in memory explicitly, so as to cope with a
- -fPIC bug as of gcc 970624. Making them automatic is quicker
- than loading up the pic register in this instance. */
-
- if (envp == FE_DFL_ENV)
- {
- dummy = 0;
- envp = &dummy;
- }
- else if (envp == FE_NOMASK_ENV)
- {
- dummy = 0x1f << 23;
- envp = &dummy;
- }
-
- __fenv_ldfsr (*envp);
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__fesetenv, __old_fesetenv)
-compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1);
-#endif
-
-libm_hidden_def (__fesetenv)
-libm_hidden_ver (__fesetenv, fesetenv)
-versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/fesetexcept.c b/sysdeps/sparc/fpu/fesetexcept.c
deleted file mode 100644
index 42ff865c07..0000000000
--- a/sysdeps/sparc/fpu/fesetexcept.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/* Set given exception flags. SPARC version.
- Copyright (C) 2016-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 <fenv.h>
-
-int
-fesetexcept (int excepts)
-{
- fenv_t tmp;
-
- __fenv_stfsr (tmp);
- tmp |= excepts & FE_ALL_EXCEPT;
- __fenv_ldfsr (tmp);
-
- return 0;
-}
diff --git a/sysdeps/sparc/fpu/fesetmode.c b/sysdeps/sparc/fpu/fesetmode.c
deleted file mode 100644
index c678c8b8d9..0000000000
--- a/sysdeps/sparc/fpu/fesetmode.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Install given floating-point control modes. SPARC version.
- Copyright (C) 2016-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 <fenv.h>
-#include <fpu_control.h>
-
-#define FPU_CONTROL_BITS 0xcfc00000UL
-
-int
-fesetmode (const femode_t *modep)
-{
- femode_t fsr;
-
- __fenv_stfsr (fsr);
- fsr &= ~FPU_CONTROL_BITS;
- if (modep == FE_DFL_MODE)
- fsr |= _FPU_DEFAULT;
- else
- fsr |= *modep & FPU_CONTROL_BITS;
- __fenv_ldfsr (fsr);
-
- return 0;
-}
diff --git a/sysdeps/sparc/fpu/fesetround.c b/sysdeps/sparc/fpu/fesetround.c
deleted file mode 100644
index e2a528a4c5..0000000000
--- a/sysdeps/sparc/fpu/fesetround.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Set current rounding direction.
- Copyright (C) 1997-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 <fenv.h>
-
-int
-__fesetround (int round)
-{
- fenv_t tmp;
-
- if ((round & ~__FE_ROUND_MASK) != 0)
- /* ROUND is no valid rounding mode. */
- return 1;
-
- __fenv_stfsr (tmp);
- tmp &= ~__FE_ROUND_MASK;
- tmp |= round;
- __fenv_ldfsr (tmp);
-
- return 0;
-}
-libm_hidden_def (__fesetround)
-weak_alias (__fesetround, fesetround)
-libm_hidden_weak (fesetround)
diff --git a/sysdeps/sparc/fpu/feupdateenv.c b/sysdeps/sparc/fpu/feupdateenv.c
deleted file mode 100644
index 08615640d7..0000000000
--- a/sysdeps/sparc/fpu/feupdateenv.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Install given floating-point environment and raise exceptions.
- Copyright (C) 1997-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 <fenv.h>
-#include <shlib-compat.h>
-
-int
-__feupdateenv (const fenv_t *envp)
-{
- fexcept_t tmp;
-
- /* Save current exceptions. */
- __fenv_stfsr (tmp);
- tmp &= FE_ALL_EXCEPT;
-
- /* Install new environment. */
- __fesetenv (envp);
-
- /* Raise the safed exception. Incidently for us the implementation
- defined format of the values in objects of type fexcept_t is the
- same as the ones specified using the FE_* constants. */
- __feraiseexcept ((int) tmp);
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__feupdateenv, __old_feupdateenv)
-compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1);
-#endif
-
-libm_hidden_def (__feupdateenv)
-libm_hidden_ver (__feupdateenv, feupdateenv)
-versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/fgetexcptflg.c b/sysdeps/sparc/fpu/fgetexcptflg.c
deleted file mode 100644
index ab05a3caf8..0000000000
--- a/sysdeps/sparc/fpu/fgetexcptflg.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Store current representation for exceptions.
- Copyright (C) 1997-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 <fenv.h>
-#include <shlib-compat.h>
-
-int
-__fegetexceptflag (fexcept_t *flagp, int excepts)
-{
- fexcept_t tmp;
-
- /* Get the current exceptions. */
- __fenv_stfsr (tmp);
-
- *flagp = tmp & excepts & FE_ALL_EXCEPT;
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__fegetexceptflag, __old_fegetexceptflag)
-compat_symbol (libm, __old_fegetexceptflag, fegetexceptflag, GLIBC_2_1);
-#endif
-
-versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/fpu_control.h b/sysdeps/sparc/fpu/fpu_control.h
deleted file mode 100644
index 77acde9253..0000000000
--- a/sysdeps/sparc/fpu/fpu_control.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/* FPU control word bits. SPARC version.
- Copyright (C) 1997-2017 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Miguel de Icaza
-
- 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/>. */
-
-#ifndef _FPU_CONTROL_H
-#define _FPU_CONTROL_H 1
-
-
-#include <features.h>
-#include <bits/wordsize.h>
-
-/* masking of interrupts */
-#define _FPU_MASK_IM 0x08000000
-#define _FPU_MASK_OM 0x04000000
-#define _FPU_MASK_UM 0x02000000
-#define _FPU_MASK_ZM 0x01000000
-#define _FPU_MASK_PM 0x00800000
-
-/* precision control */
-#define _FPU_EXTENDED 0x00000000 /* RECOMMENDED */
-#define _FPU_DOUBLE 0x20000000
-#define _FPU_80BIT 0x30000000
-#define _FPU_SINGLE 0x10000000 /* DO NOT USE */
-
-/* rounding control / Sparc */
-#define _FPU_RC_DOWN 0xc0000000
-#define _FPU_RC_UP 0x80000000
-#define _FPU_RC_ZERO 0x40000000
-#define _FPU_RC_NEAREST 0x0 /* RECOMMENDED */
-
-#define _FPU_RESERVED 0x30300000 /* Reserved bits in cw */
-
-
-/* Now two recommended cw */
-
-/* Linux and IEEE default:
- - extended precision
- - rounding to nearest
- - no exceptions */
-#define _FPU_DEFAULT 0x0
-#define _FPU_IEEE 0x0
-
-/* Type of the control word. */
-typedef unsigned long int fpu_control_t;
-
-#if __WORDSIZE == 64
-# define _FPU_GETCW(cw) __asm__ __volatile__ ("stx %%fsr,%0" : "=m" (*&cw))
-# define _FPU_SETCW(cw) __asm__ __volatile__ ("ldx %0,%%fsr" : : "m" (*&cw))
-#else
-# define _FPU_GETCW(cw) __asm__ __volatile__ ("st %%fsr,%0" : "=m" (*&cw))
-# define _FPU_SETCW(cw) __asm__ __volatile__ ("ld %0,%%fsr" : : "m" (*&cw))
-#endif
-
-/* Default control word set at startup. */
-extern fpu_control_t __fpu_control;
-
-#endif /* fpu_control.h */
diff --git a/sysdeps/sparc/fpu/fraiseexcpt.c b/sysdeps/sparc/fpu/fraiseexcpt.c
deleted file mode 100644
index 954166ed64..0000000000
--- a/sysdeps/sparc/fpu/fraiseexcpt.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Raise given exceptions.
- Copyright (C) 1997-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 <fenv.h>
-#include <float.h>
-#include <math.h>
-#include <shlib-compat.h>
-
-int
-__feraiseexcept (int excepts)
-{
- static const struct {
- double zero, one, max, min, pi;
- } c = {
- 0.0, 1.0, DBL_MAX, DBL_MIN, M_PI
- };
- double d;
-
- /* Raise exceptions represented by EXPECTS. But we must raise only
- one signal at a time. It is important the if the overflow/underflow
- exception and the inexact exception are given at the same time,
- the overflow/underflow exception follows the inexact exception. */
-
- /* First: invalid exception. */
- if ((FE_INVALID & excepts) != 0)
- {
- /* One example of an invalid operation is 0/0. */
- __asm ("" : "=e" (d) : "0" (c.zero));
- d /= c.zero;
- __asm __volatile ("" : : "e" (d));
- }
-
- /* Next: division by zero. */
- if ((FE_DIVBYZERO & excepts) != 0)
- {
- __asm ("" : "=e" (d) : "0" (c.one));
- d /= c.zero;
- __asm __volatile ("" : : "e" (d));
- }
-
- /* Next: overflow. */
- if ((FE_OVERFLOW & excepts) != 0)
- {
- __asm ("" : "=e" (d) : "0" (c.max));
- d *= d;
- __asm __volatile ("" : : "e" (d));
- }
-
- /* Next: underflow. */
- if ((FE_UNDERFLOW & excepts) != 0)
- {
- __asm ("" : "=e" (d) : "0" (c.min));
- d *= d;
- __asm __volatile ("" : : "e" (d));
- }
-
- /* Last: inexact. */
- if ((FE_INEXACT & excepts) != 0)
- {
- __asm ("" : "=e" (d) : "0" (c.one));
- d /= c.pi;
- __asm __volatile ("" : : "e" (d));
- }
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__feraiseexcept, __old_feraiseexcept)
-compat_symbol (libm, __old_feraiseexcept, feraiseexcept, GLIBC_2_1);
-#endif
-
-libm_hidden_def (__feraiseexcept)
-libm_hidden_ver (__feraiseexcept, feraiseexcept)
-versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/fsetexcptflg.c b/sysdeps/sparc/fpu/fsetexcptflg.c
deleted file mode 100644
index 3546fbf996..0000000000
--- a/sysdeps/sparc/fpu/fsetexcptflg.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/* Set floating-point environment exception handling.
- Copyright (C) 1997-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 <fenv.h>
-#include <math.h>
-#include <shlib-compat.h>
-
-int
-__fesetexceptflag (const fexcept_t *flagp, int excepts)
-{
- fenv_t tmp;
-
- __fenv_stfsr (tmp);
-
- tmp &= ~(excepts & FE_ALL_EXCEPT);
- tmp |= *flagp & excepts & FE_ALL_EXCEPT;
-
- __fenv_ldfsr (tmp);
-
- /* Success. */
- return 0;
-}
-
-#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
-strong_alias (__fesetexceptflag, __old_fesetexceptflag)
-compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1);
-#endif
-
-versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2);
diff --git a/sysdeps/sparc/fpu/ftestexcept.c b/sysdeps/sparc/fpu/ftestexcept.c
deleted file mode 100644
index f2b51f4b12..0000000000
--- a/sysdeps/sparc/fpu/ftestexcept.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Test exception in current environment.
- Copyright (C) 1997-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 <fenv.h>
-
-int
-fetestexcept (int excepts)
-{
- fenv_t tmp;
-
- __fenv_stfsr (tmp);
-
- return tmp & excepts & FE_ALL_EXCEPT;
-}
-libm_hidden_def (fetestexcept)
diff --git a/sysdeps/sparc/fpu/libm-test-ulps b/sysdeps/sparc/fpu/libm-test-ulps
deleted file mode 100644
index cf6a2929d3..0000000000
--- a/sysdeps/sparc/fpu/libm-test-ulps
+++ /dev/null
@@ -1,2262 +0,0 @@
-# Begin of automatic generation
-
-# Maximal error of functions:
-Function: "acos":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "acos_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "acos_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "acos_upward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "acosh":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "acosh_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "acosh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "acosh_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "asin":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "asin_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "asin_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "asin_upward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "asinh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "asinh_downward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "asinh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "asinh_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "atan":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "atan2":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "atan2_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "atan2_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "atan2_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "atan_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "atan_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "atan_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "atanh":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "atanh_downward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "atanh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "atanh_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "cabs":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cabs_downward":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cabs_towardzero":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cabs_upward":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "cacos":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "cacos":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cacos_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "cacos_downward":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "cacos_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "cacos_towardzero":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "cacos_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "cacos_upward":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "cacosh":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "cacosh":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cacosh_downward":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "cacosh_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cacosh_towardzero":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "cacosh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cacosh_upward":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "cacosh_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "carg":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "carg_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "carg_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "carg_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "casin":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "casin":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "casin_downward":
-double: 3
-float: 1
-idouble: 3
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "casin_downward":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "casin_towardzero":
-double: 3
-float: 1
-idouble: 3
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "casin_towardzero":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "casin_upward":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "casin_upward":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "casinh":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "casinh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "casinh_downward":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "casinh_downward":
-double: 3
-float: 1
-idouble: 3
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "casinh_towardzero":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "casinh_towardzero":
-double: 3
-float: 1
-idouble: 3
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "casinh_upward":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "casinh_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "catan":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "catan":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "catan_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "catan_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "catan_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "catan_towardzero":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "catan_upward":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "catan_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "catanh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "catanh":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "catanh_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "catanh_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "catanh_towardzero":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "catanh_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "catanh_upward":
-double: 4
-float: 3
-idouble: 4
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "catanh_upward":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cbrt":
-double: 3
-float: 1
-idouble: 3
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cbrt_downward":
-double: 4
-float: 1
-idouble: 4
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cbrt_towardzero":
-double: 3
-float: 1
-idouble: 3
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cbrt_upward":
-double: 5
-float: 1
-idouble: 5
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "ccos":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "ccos":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "ccos_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "ccos_downward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "ccos_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "ccos_towardzero":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "ccos_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "ccos_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "ccosh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "ccosh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "ccosh_downward":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "ccosh_downward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "ccosh_towardzero":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "ccosh_towardzero":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "ccosh_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "ccosh_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cexp":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "cexp":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "cexp_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "cexp_downward":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cexp_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "cexp_towardzero":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cexp_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "cexp_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "clog":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "clog":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "clog10":
-double: 3
-float: 4
-idouble: 3
-ifloat: 4
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "clog10":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "clog10_downward":
-double: 6
-float: 6
-idouble: 6
-ifloat: 6
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "clog10_downward":
-double: 2
-float: 4
-idouble: 2
-ifloat: 4
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "clog10_towardzero":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 6
-ldouble: 6
-
-Function: Imaginary part of "clog10_towardzero":
-double: 2
-float: 4
-idouble: 2
-ifloat: 4
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "clog10_upward":
-double: 8
-float: 5
-idouble: 8
-ifloat: 5
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "clog10_upward":
-double: 2
-float: 4
-idouble: 2
-ifloat: 4
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "clog_downward":
-double: 7
-float: 5
-idouble: 7
-ifloat: 5
-ildouble: 6
-ldouble: 6
-
-Function: Imaginary part of "clog_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "clog_towardzero":
-double: 7
-float: 5
-idouble: 7
-ifloat: 5
-ildouble: 6
-ldouble: 6
-
-Function: Imaginary part of "clog_towardzero":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "clog_upward":
-double: 8
-float: 5
-idouble: 8
-ifloat: 5
-ildouble: 6
-ldouble: 6
-
-Function: Imaginary part of "clog_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "cos":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cos_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "cos_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cos_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "cosh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "cosh_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 2
-
-Function: "cosh_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 2
-
-Function: "cosh_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 1
-ldouble: 3
-
-Function: Real part of "cpow":
-double: 2
-float: 4
-idouble: 2
-ifloat: 4
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "cpow":
-float: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "cpow_downward":
-double: 4
-float: 8
-idouble: 4
-ifloat: 8
-ildouble: 6
-ldouble: 6
-
-Function: Imaginary part of "cpow_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cpow_towardzero":
-double: 4
-float: 8
-idouble: 4
-ifloat: 8
-ildouble: 6
-ldouble: 6
-
-Function: Imaginary part of "cpow_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "cpow_upward":
-double: 4
-float: 1
-idouble: 4
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "cpow_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "csin":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "csin":
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "csin_downward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "csin_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "csin_towardzero":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "csin_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "csin_upward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "csin_upward":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "csinh":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Imaginary part of "csinh":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: Real part of "csinh_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "csinh_downward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "csinh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "csinh_towardzero":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "csinh_upward":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "csinh_upward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "csqrt":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Imaginary part of "csqrt":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: Real part of "csqrt_downward":
-double: 5
-float: 4
-idouble: 5
-ifloat: 4
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "csqrt_downward":
-double: 4
-float: 3
-idouble: 4
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "csqrt_towardzero":
-double: 4
-float: 3
-idouble: 4
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "csqrt_towardzero":
-double: 4
-float: 3
-idouble: 4
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "csqrt_upward":
-double: 5
-float: 4
-idouble: 5
-ifloat: 4
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "csqrt_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "ctan":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "ctan":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "ctan_downward":
-double: 6
-float: 5
-idouble: 6
-ifloat: 5
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "ctan_downward":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "ctan_towardzero":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: Imaginary part of "ctan_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "ctan_upward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "ctan_upward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Real part of "ctanh":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: Imaginary part of "ctanh":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "ctanh_downward":
-double: 4
-float: 1
-idouble: 4
-ifloat: 1
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "ctanh_downward":
-double: 6
-float: 5
-idouble: 6
-ifloat: 5
-ildouble: 4
-ldouble: 4
-
-Function: Real part of "ctanh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "ctanh_towardzero":
-double: 5
-float: 3
-idouble: 5
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: Real part of "ctanh_upward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: Imaginary part of "ctanh_upward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: "erf":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "erf_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "erf_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "erf_upward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "erfc":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "erfc_downward":
-double: 5
-float: 6
-idouble: 5
-ifloat: 6
-ildouble: 5
-ldouble: 5
-
-Function: "erfc_towardzero":
-double: 3
-float: 4
-idouble: 3
-ifloat: 4
-ildouble: 4
-ldouble: 4
-
-Function: "erfc_upward":
-double: 5
-float: 6
-idouble: 5
-ifloat: 6
-ildouble: 5
-ldouble: 5
-
-Function: "exp":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "exp10":
-double: 2
-idouble: 2
-ildouble: 2
-ldouble: 2
-
-Function: "exp10_downward":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "exp10_towardzero":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "exp10_upward":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "exp2":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "exp2_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "exp2_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "exp2_upward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "exp_downward":
-double: 1
-idouble: 1
-
-Function: "exp_towardzero":
-double: 1
-idouble: 1
-
-Function: "exp_upward":
-double: 1
-idouble: 1
-
-Function: "expm1":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "expm1_downward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "expm1_towardzero":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 4
-ldouble: 4
-
-Function: "expm1_upward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "gamma":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: "gamma_downward":
-double: 5
-float: 4
-idouble: 5
-ifloat: 4
-ildouble: 8
-ldouble: 8
-
-Function: "gamma_towardzero":
-double: 5
-float: 4
-idouble: 5
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: "gamma_upward":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 8
-ldouble: 8
-
-Function: "hypot":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "hypot_downward":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "hypot_towardzero":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "hypot_upward":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-
-Function: "j0":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "j0_downward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "j0_towardzero":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "j0_upward":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 5
-ldouble: 5
-
-Function: "j1":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 4
-ldouble: 4
-
-Function: "j1_downward":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 4
-ldouble: 4
-
-Function: "j1_towardzero":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 4
-ldouble: 4
-
-Function: "j1_upward":
-double: 3
-float: 5
-idouble: 3
-ifloat: 5
-ildouble: 3
-ldouble: 3
-
-Function: "jn":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 7
-ldouble: 7
-
-Function: "jn_downward":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 8
-ldouble: 8
-
-Function: "jn_towardzero":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 8
-ldouble: 8
-
-Function: "jn_upward":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 7
-ldouble: 7
-
-Function: "lgamma":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: "lgamma_downward":
-double: 5
-float: 4
-idouble: 5
-ifloat: 4
-ildouble: 8
-ldouble: 8
-
-Function: "lgamma_towardzero":
-double: 5
-float: 4
-idouble: 5
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-Function: "lgamma_upward":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 8
-ldouble: 8
-
-Function: "log":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "log10":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "log10_downward":
-double: 2
-float: 3
-idouble: 2
-ifloat: 3
-ildouble: 1
-ldouble: 1
-
-Function: "log10_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "log10_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "log1p":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "log1p_downward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "log1p_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "log1p_upward":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "log2":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "log2_downward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: "log2_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "log2_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 1
-ldouble: 1
-
-Function: "log_downward":
-float: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "log_towardzero":
-float: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "log_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "pow":
-float: 3
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: "pow10":
-double: 2
-idouble: 2
-ildouble: 2
-ldouble: 2
-
-Function: "pow10_downward":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "pow10_towardzero":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "pow10_upward":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "pow_downward":
-double: 1
-float: 3
-idouble: 1
-ifloat: 3
-ildouble: 2
-ldouble: 2
-
-Function: "pow_towardzero":
-double: 1
-float: 4
-idouble: 1
-ifloat: 4
-ildouble: 2
-ldouble: 2
-
-Function: "pow_upward":
-double: 1
-float: 4
-idouble: 1
-ifloat: 4
-ildouble: 2
-ldouble: 2
-
-Function: "sin":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "sin_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "sin_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "sin_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "sincos":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "sincos_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "sincos_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
-
-Function: "sincos_upward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "sinh":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "sinh_downward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: "sinh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "sinh_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "tan":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "tan_downward":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-ildouble: 1
-ldouble: 1
-
-Function: "tan_towardzero":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "tan_upward":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-
-Function: "tanh":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "tanh_downward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 4
-ldouble: 4
-
-Function: "tanh_towardzero":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 3
-ldouble: 3
-
-Function: "tanh_upward":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: "tgamma":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 4
-ldouble: 4
-
-Function: "tgamma_downward":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 5
-ldouble: 5
-
-Function: "tgamma_towardzero":
-double: 5
-float: 5
-idouble: 5
-ifloat: 5
-ildouble: 5
-ldouble: 5
-
-Function: "tgamma_upward":
-double: 4
-float: 5
-idouble: 4
-ifloat: 5
-ildouble: 4
-ldouble: 4
-
-Function: "y0":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 3
-ldouble: 3
-
-Function: "y0_downward":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 4
-ldouble: 4
-
-Function: "y0_towardzero":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 3
-ldouble: 3
-
-Function: "y0_upward":
-double: 3
-float: 4
-idouble: 3
-ifloat: 4
-ildouble: 3
-ldouble: 3
-
-Function: "y1":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "y1_downward":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 4
-ldouble: 4
-
-Function: "y1_towardzero":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 2
-ldouble: 2
-
-Function: "y1_upward":
-double: 7
-float: 2
-idouble: 7
-ifloat: 2
-ildouble: 5
-ldouble: 5
-
-Function: "yn":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 5
-ldouble: 5
-
-Function: "yn_downward":
-double: 3
-float: 2
-idouble: 3
-ifloat: 2
-ildouble: 5
-ldouble: 5
-
-Function: "yn_towardzero":
-double: 3
-float: 3
-idouble: 3
-ifloat: 3
-ildouble: 5
-ldouble: 5
-
-Function: "yn_upward":
-double: 4
-float: 4
-idouble: 4
-ifloat: 4
-ildouble: 5
-ldouble: 5
-
-# end of automatic generation
diff --git a/sysdeps/sparc/fpu/libm-test-ulps-name b/sysdeps/sparc/fpu/libm-test-ulps-name
deleted file mode 100644
index 71240543c4..0000000000
--- a/sysdeps/sparc/fpu/libm-test-ulps-name
+++ /dev/null
@@ -1 +0,0 @@
-Sparc
diff --git a/sysdeps/sparc/fpu/math_private.h b/sysdeps/sparc/fpu/math_private.h
deleted file mode 100644
index 27946cec7b..0000000000
--- a/sysdeps/sparc/fpu/math_private.h
+++ /dev/null
@@ -1,7 +0,0 @@
-#ifndef SPARC_MATH_PRIVATE_H
-#define SPARC_MATH_PRIVATE_H 1
-
-#include "fenv_private.h"
-#include_next <math_private.h>
-
-#endif /* SPARC_MATH_PRIVATE_H */