diff options
Diffstat (limited to 'sysdeps/sparc/fpu')
-rw-r--r-- | sysdeps/sparc/fpu/bits/fenv.h | 9 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fclrexcpt.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fedisblxcpt.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/feenablxcpt.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fegetenv.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fegetexcept.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fegetmode.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fegetround.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/feholdexcpt.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fenv_private.h | 9 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fesetenv.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fesetexcept.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fesetmode.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fesetround.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/feupdateenv.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fgetexcptflg.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/fsetexcptflg.c | 1 | ||||
-rw-r--r-- | sysdeps/sparc/fpu/ftestexcept.c | 1 |
18 files changed, 25 insertions, 9 deletions
diff --git a/sysdeps/sparc/fpu/bits/fenv.h b/sysdeps/sparc/fpu/bits/fenv.h index 4935208..d34fcac 100644 --- a/sysdeps/sparc/fpu/bits/fenv.h +++ b/sysdeps/sparc/fpu/bits/fenv.h @@ -83,15 +83,6 @@ typedef unsigned long int fenv_t; # 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_C2X) /* Type representing floating-point control modes. */ typedef unsigned long int femode_t; diff --git a/sysdeps/sparc/fpu/fclrexcpt.c b/sysdeps/sparc/fpu/fclrexcpt.c index b11734f..5af20d1 100644 --- a/sysdeps/sparc/fpu/fclrexcpt.c +++ b/sysdeps/sparc/fpu/fclrexcpt.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <shlib-compat.h> int diff --git a/sysdeps/sparc/fpu/fedisblxcpt.c b/sysdeps/sparc/fpu/fedisblxcpt.c index 86688ab..9b832a8 100644 --- a/sysdeps/sparc/fpu/fedisblxcpt.c +++ b/sysdeps/sparc/fpu/fedisblxcpt.c @@ -18,6 +18,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int fedisableexcept (int excepts) diff --git a/sysdeps/sparc/fpu/feenablxcpt.c b/sysdeps/sparc/fpu/feenablxcpt.c index 647093c..06ec14c 100644 --- a/sysdeps/sparc/fpu/feenablxcpt.c +++ b/sysdeps/sparc/fpu/feenablxcpt.c @@ -18,6 +18,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int feenableexcept (int excepts) diff --git a/sysdeps/sparc/fpu/fegetenv.c b/sysdeps/sparc/fpu/fegetenv.c index edde6ae..00c0bc7 100644 --- a/sysdeps/sparc/fpu/fegetenv.c +++ b/sysdeps/sparc/fpu/fegetenv.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <shlib-compat.h> int diff --git a/sysdeps/sparc/fpu/fegetexcept.c b/sysdeps/sparc/fpu/fegetexcept.c index f549a90..4d9746d 100644 --- a/sysdeps/sparc/fpu/fegetexcept.c +++ b/sysdeps/sparc/fpu/fegetexcept.c @@ -18,6 +18,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int fegetexcept (void) diff --git a/sysdeps/sparc/fpu/fegetmode.c b/sysdeps/sparc/fpu/fegetmode.c index 18c932d..aa160bd 100644 --- a/sysdeps/sparc/fpu/fegetmode.c +++ b/sysdeps/sparc/fpu/fegetmode.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int fegetmode (femode_t *modep) diff --git a/sysdeps/sparc/fpu/fegetround.c b/sysdeps/sparc/fpu/fegetround.c index 1eae341..6ca7d5c 100644 --- a/sysdeps/sparc/fpu/fegetround.c +++ b/sysdeps/sparc/fpu/fegetround.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int __fegetround (void) diff --git a/sysdeps/sparc/fpu/feholdexcpt.c b/sysdeps/sparc/fpu/feholdexcpt.c index 7a1a3e3..bb61240 100644 --- a/sysdeps/sparc/fpu/feholdexcpt.c +++ b/sysdeps/sparc/fpu/feholdexcpt.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int __feholdexcept (fenv_t *envp) diff --git a/sysdeps/sparc/fpu/fenv_private.h b/sysdeps/sparc/fpu/fenv_private.h index dbd1001..da7c7fe 100644 --- a/sysdeps/sparc/fpu/fenv_private.h +++ b/sysdeps/sparc/fpu/fenv_private.h @@ -3,6 +3,15 @@ #include <fenv.h> +/* 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 + static __always_inline void libc_feholdexcept (fenv_t *e) { diff --git a/sysdeps/sparc/fpu/fesetenv.c b/sysdeps/sparc/fpu/fesetenv.c index 82c03c6..d536abd 100644 --- a/sysdeps/sparc/fpu/fesetenv.c +++ b/sysdeps/sparc/fpu/fesetenv.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <shlib-compat.h> int diff --git a/sysdeps/sparc/fpu/fesetexcept.c b/sysdeps/sparc/fpu/fesetexcept.c index 6740ece..fbc21c0 100644 --- a/sysdeps/sparc/fpu/fesetexcept.c +++ b/sysdeps/sparc/fpu/fesetexcept.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int fesetexcept (int excepts) diff --git a/sysdeps/sparc/fpu/fesetmode.c b/sysdeps/sparc/fpu/fesetmode.c index 6fe5d33..24148e0 100644 --- a/sysdeps/sparc/fpu/fesetmode.c +++ b/sysdeps/sparc/fpu/fesetmode.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <fpu_control.h> #define FPU_CONTROL_BITS 0xcfc00000UL diff --git a/sysdeps/sparc/fpu/fesetround.c b/sysdeps/sparc/fpu/fesetround.c index 9a94432..b259474 100644 --- a/sysdeps/sparc/fpu/fesetround.c +++ b/sysdeps/sparc/fpu/fesetround.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int __fesetround (int round) diff --git a/sysdeps/sparc/fpu/feupdateenv.c b/sysdeps/sparc/fpu/feupdateenv.c index 7e2399b..7721f82 100644 --- a/sysdeps/sparc/fpu/feupdateenv.c +++ b/sysdeps/sparc/fpu/feupdateenv.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <shlib-compat.h> int diff --git a/sysdeps/sparc/fpu/fgetexcptflg.c b/sysdeps/sparc/fpu/fgetexcptflg.c index f95d9bb..ab8fa1b 100644 --- a/sysdeps/sparc/fpu/fgetexcptflg.c +++ b/sysdeps/sparc/fpu/fgetexcptflg.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <shlib-compat.h> int diff --git a/sysdeps/sparc/fpu/fsetexcptflg.c b/sysdeps/sparc/fpu/fsetexcptflg.c index 077dfc9..34eb789 100644 --- a/sysdeps/sparc/fpu/fsetexcptflg.c +++ b/sysdeps/sparc/fpu/fsetexcptflg.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> #include <math.h> #include <shlib-compat.h> diff --git a/sysdeps/sparc/fpu/ftestexcept.c b/sysdeps/sparc/fpu/ftestexcept.c index a8c8e06..44367ab 100644 --- a/sysdeps/sparc/fpu/ftestexcept.c +++ b/sysdeps/sparc/fpu/ftestexcept.c @@ -17,6 +17,7 @@ <https://www.gnu.org/licenses/>. */ #include <fenv.h> +#include <fenv_private.h> int fetestexcept (int excepts) |