msun/x86: convert rest of the extern inline fenv functions to proper linkage
namely
fegetexceptflag(3)
fetestexcept(3)
fesetround(3)
fegetround(3)
fesetenv(3)
Same as it was done in f39754d51b for feclearexcept(3).
PR: 277958
Reviewed by: dim
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D56139
This commit is contained in:
+27
-5
@@ -52,7 +52,11 @@ int
|
||||
return (__feclearexcept_int(excepts));
|
||||
}
|
||||
|
||||
extern inline int fegetexceptflag(fexcept_t *__flagp, int __excepts);
|
||||
int
|
||||
(fegetexceptflag)(fexcept_t *flagp, int excepts)
|
||||
{
|
||||
return (__fegetexceptflag_int(flagp, excepts));
|
||||
}
|
||||
|
||||
int
|
||||
fesetexceptflag(const fexcept_t *flagp, int excepts)
|
||||
@@ -82,9 +86,23 @@ feraiseexcept(int excepts)
|
||||
return (0);
|
||||
}
|
||||
|
||||
extern inline int fetestexcept(int __excepts);
|
||||
extern inline int fegetround(void);
|
||||
extern inline int fesetround(int __round);
|
||||
int
|
||||
(fetestexcept)(int excepts)
|
||||
{
|
||||
return (__fetestexcept_int(excepts));
|
||||
}
|
||||
|
||||
int
|
||||
(fegetround)(void)
|
||||
{
|
||||
return (__fegetround_int());
|
||||
}
|
||||
|
||||
int
|
||||
(fesetround)(int round)
|
||||
{
|
||||
return (__fesetround_int(round));
|
||||
}
|
||||
|
||||
int
|
||||
fegetenv(fenv_t *envp)
|
||||
@@ -115,7 +133,11 @@ feholdexcept(fenv_t *envp)
|
||||
return (0);
|
||||
}
|
||||
|
||||
extern inline int fesetenv(const fenv_t *__envp);
|
||||
int
|
||||
(fesetenv)(const fenv_t *envp)
|
||||
{
|
||||
return (__fesetenv_int(envp));
|
||||
}
|
||||
|
||||
int
|
||||
feupdateenv(const fenv_t *envp)
|
||||
|
||||
+27
-5
@@ -94,7 +94,11 @@ int
|
||||
return (__feclearexcept_int(excepts));
|
||||
}
|
||||
|
||||
extern inline int fegetexceptflag(fexcept_t *__flagp, int __excepts);
|
||||
int
|
||||
(fegetexceptflag)(fexcept_t *flagp, int excepts)
|
||||
{
|
||||
return (__fegetexceptflag_int(flagp, excepts));
|
||||
}
|
||||
|
||||
int
|
||||
fesetexceptflag(const fexcept_t *flagp, int excepts)
|
||||
@@ -127,9 +131,23 @@ feraiseexcept(int excepts)
|
||||
return (0);
|
||||
}
|
||||
|
||||
extern inline int fetestexcept(int __excepts);
|
||||
extern inline int fegetround(void);
|
||||
extern inline int fesetround(int __round);
|
||||
int
|
||||
(fetestexcept)(int excepts)
|
||||
{
|
||||
return (__fetestexcept_int(excepts));
|
||||
}
|
||||
|
||||
int
|
||||
(fegetround)(void)
|
||||
{
|
||||
return (__fegetround_int());
|
||||
}
|
||||
|
||||
int
|
||||
(fesetround)(int round)
|
||||
{
|
||||
return (__fesetround_int(round));
|
||||
}
|
||||
|
||||
int
|
||||
fegetenv(fenv_t *envp)
|
||||
@@ -166,7 +184,11 @@ feholdexcept(fenv_t *envp)
|
||||
return (0);
|
||||
}
|
||||
|
||||
extern inline int fesetenv(const fenv_t *__envp);
|
||||
int
|
||||
(fesetenv)(const fenv_t *envp)
|
||||
{
|
||||
return (__fesetenv_int(envp));
|
||||
}
|
||||
|
||||
int
|
||||
feupdateenv(const fenv_t *envp)
|
||||
|
||||
+20
-9
@@ -108,7 +108,7 @@ int feraiseexcept(int __excepts);
|
||||
int feupdateenv(const fenv_t *__envp);
|
||||
|
||||
__fenv_static inline int
|
||||
fegetround(void)
|
||||
__fegetround_int(void)
|
||||
{
|
||||
__uint16_t __control;
|
||||
|
||||
@@ -144,7 +144,18 @@ fegetexcept(void)
|
||||
#endif /* __BSD_VISIBLE */
|
||||
|
||||
int feclearexcept(int);
|
||||
int fegetexceptflag(fexcept_t *, int);
|
||||
int fetestexcept(int);
|
||||
int fesetround(int);
|
||||
int fegetround(void);
|
||||
int fesetenv(const fenv_t *);
|
||||
|
||||
#define feclearexcept(a) __feclearexcept_int(a)
|
||||
#define fegetexceptflag(e, a) __fegetexceptflag_int(e, a)
|
||||
#define fetestexcept(a) __fetestexcept_int(a)
|
||||
#define fesetround(a) __fesetround_int(a)
|
||||
#define fegetround() __fegetround_int()
|
||||
#define fesetenv(a) __fesetenv_int(a)
|
||||
|
||||
#ifdef __i386__
|
||||
|
||||
@@ -188,7 +199,7 @@ __feclearexcept_int(int __excepts)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
||||
__fegetexceptflag_int(fexcept_t *__flagp, int __excepts)
|
||||
{
|
||||
__uint32_t __mxcsr;
|
||||
__uint16_t __status;
|
||||
@@ -203,7 +214,7 @@ fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fetestexcept(int __excepts)
|
||||
__fetestexcept_int(int __excepts)
|
||||
{
|
||||
__uint32_t __mxcsr;
|
||||
__uint16_t __status;
|
||||
@@ -217,7 +228,7 @@ fetestexcept(int __excepts)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fesetround(int __round)
|
||||
__fesetround_int(int __round)
|
||||
{
|
||||
__uint32_t __mxcsr;
|
||||
__uint16_t __control;
|
||||
@@ -241,7 +252,7 @@ fesetround(int __round)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fesetenv(const fenv_t *__envp)
|
||||
__fesetenv_int(const fenv_t *__envp)
|
||||
{
|
||||
fenv_t __env = *__envp;
|
||||
__uint32_t __mxcsr;
|
||||
@@ -283,7 +294,7 @@ __feclearexcept_int(int __excepts)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
||||
__fegetexceptflag_int(fexcept_t *__flagp, int __excepts)
|
||||
{
|
||||
__uint32_t __mxcsr;
|
||||
__uint16_t __status;
|
||||
@@ -295,7 +306,7 @@ fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fetestexcept(int __excepts)
|
||||
__fetestexcept_int(int __excepts)
|
||||
{
|
||||
__uint32_t __mxcsr;
|
||||
__uint16_t __status;
|
||||
@@ -306,7 +317,7 @@ fetestexcept(int __excepts)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fesetround(int __round)
|
||||
__fesetround_int(int __round)
|
||||
{
|
||||
__uint32_t __mxcsr;
|
||||
__uint16_t __control;
|
||||
@@ -328,7 +339,7 @@ fesetround(int __round)
|
||||
}
|
||||
|
||||
__fenv_static inline int
|
||||
fesetenv(const fenv_t *__envp)
|
||||
__fesetenv_int(const fenv_t *__envp)
|
||||
{
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user