|
@@ -36,8 +36,8 @@
|
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
/* The high 32 bits contain fpcr, low 32 contain fpsr. */
|
|
/* The high 32 bits contain fpcr, low 32 contain fpsr. */
|
|
|
-typedef __uint64_t fenv_t;
|
|
|
|
|
-typedef __uint64_t fexcept_t;
|
|
|
|
|
|
|
+typedef uint64_t fenv_t;
|
|
|
|
|
+typedef uint64_t fexcept_t;
|
|
|
|
|
|
|
|
/* Exception flags */
|
|
/* Exception flags */
|
|
|
#define FE_INVALID 0x00000001
|
|
#define FE_INVALID 0x00000001
|
|
@@ -158,8 +158,8 @@ fesetround(int __round)
|
|
|
__fenv_static inline int
|
|
__fenv_static inline int
|
|
|
fegetenv(fenv_t *__envp)
|
|
fegetenv(fenv_t *__envp)
|
|
|
{
|
|
{
|
|
|
- __uint64_t fpcr;
|
|
|
|
|
- __uint64_t fpsr;
|
|
|
|
|
|
|
+ uint64_t fpcr;
|
|
|
|
|
+ uint64_t fpsr;
|
|
|
|
|
|
|
|
__mrs_fpcr(fpcr);
|
|
__mrs_fpcr(fpcr);
|
|
|
__mrs_fpsr(fpsr);
|
|
__mrs_fpsr(fpsr);
|
|
@@ -179,7 +179,7 @@ feholdexcept(fenv_t *__envp)
|
|
|
__msr_fpcr(__r);
|
|
__msr_fpcr(__r);
|
|
|
|
|
|
|
|
__mrs_fpsr(__r);
|
|
__mrs_fpsr(__r);
|
|
|
- *__envp |= (__uint32_t)__r;
|
|
|
|
|
|
|
+ *__envp |= (uint32_t)__r;
|
|
|
__r &= ~(_ENABLE_MASK);
|
|
__r &= ~(_ENABLE_MASK);
|
|
|
__msr_fpsr(__r);
|
|
__msr_fpsr(__r);
|
|
|
return (0);
|
|
return (0);
|
|
@@ -190,7 +190,7 @@ fesetenv(const fenv_t *__envp)
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
__msr_fpcr((*__envp) >> 32);
|
|
__msr_fpcr((*__envp) >> 32);
|
|
|
- __msr_fpsr((fenv_t)(__uint32_t)*__envp);
|
|
|
|
|
|
|
+ __msr_fpsr((fenv_t)(uint32_t)*__envp);
|
|
|
return (0);
|
|
return (0);
|
|
|
}
|
|
}
|
|
|
|
|
|