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));
|
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
|
int
|
||||||
fesetexceptflag(const fexcept_t *flagp, int excepts)
|
fesetexceptflag(const fexcept_t *flagp, int excepts)
|
||||||
@@ -82,9 +86,23 @@ feraiseexcept(int excepts)
|
|||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern inline int fetestexcept(int __excepts);
|
int
|
||||||
extern inline int fegetround(void);
|
(fetestexcept)(int excepts)
|
||||||
extern inline int fesetround(int __round);
|
{
|
||||||
|
return (__fetestexcept_int(excepts));
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
(fegetround)(void)
|
||||||
|
{
|
||||||
|
return (__fegetround_int());
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
(fesetround)(int round)
|
||||||
|
{
|
||||||
|
return (__fesetround_int(round));
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
fegetenv(fenv_t *envp)
|
fegetenv(fenv_t *envp)
|
||||||
@@ -115,7 +133,11 @@ feholdexcept(fenv_t *envp)
|
|||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern inline int fesetenv(const fenv_t *__envp);
|
int
|
||||||
|
(fesetenv)(const fenv_t *envp)
|
||||||
|
{
|
||||||
|
return (__fesetenv_int(envp));
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
feupdateenv(const fenv_t *envp)
|
feupdateenv(const fenv_t *envp)
|
||||||
|
|||||||
+27
-5
@@ -94,7 +94,11 @@ int
|
|||||||
return (__feclearexcept_int(excepts));
|
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
|
int
|
||||||
fesetexceptflag(const fexcept_t *flagp, int excepts)
|
fesetexceptflag(const fexcept_t *flagp, int excepts)
|
||||||
@@ -127,9 +131,23 @@ feraiseexcept(int excepts)
|
|||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern inline int fetestexcept(int __excepts);
|
int
|
||||||
extern inline int fegetround(void);
|
(fetestexcept)(int excepts)
|
||||||
extern inline int fesetround(int __round);
|
{
|
||||||
|
return (__fetestexcept_int(excepts));
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
(fegetround)(void)
|
||||||
|
{
|
||||||
|
return (__fegetround_int());
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
(fesetround)(int round)
|
||||||
|
{
|
||||||
|
return (__fesetround_int(round));
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
fegetenv(fenv_t *envp)
|
fegetenv(fenv_t *envp)
|
||||||
@@ -166,7 +184,11 @@ feholdexcept(fenv_t *envp)
|
|||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern inline int fesetenv(const fenv_t *__envp);
|
int
|
||||||
|
(fesetenv)(const fenv_t *envp)
|
||||||
|
{
|
||||||
|
return (__fesetenv_int(envp));
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
feupdateenv(const fenv_t *envp)
|
feupdateenv(const fenv_t *envp)
|
||||||
|
|||||||
+20
-9
@@ -108,7 +108,7 @@ int feraiseexcept(int __excepts);
|
|||||||
int feupdateenv(const fenv_t *__envp);
|
int feupdateenv(const fenv_t *__envp);
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fegetround(void)
|
__fegetround_int(void)
|
||||||
{
|
{
|
||||||
__uint16_t __control;
|
__uint16_t __control;
|
||||||
|
|
||||||
@@ -144,7 +144,18 @@ fegetexcept(void)
|
|||||||
#endif /* __BSD_VISIBLE */
|
#endif /* __BSD_VISIBLE */
|
||||||
|
|
||||||
int feclearexcept(int);
|
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 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__
|
#ifdef __i386__
|
||||||
|
|
||||||
@@ -188,7 +199,7 @@ __feclearexcept_int(int __excepts)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
__fegetexceptflag_int(fexcept_t *__flagp, int __excepts)
|
||||||
{
|
{
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
__uint16_t __status;
|
__uint16_t __status;
|
||||||
@@ -203,7 +214,7 @@ fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fetestexcept(int __excepts)
|
__fetestexcept_int(int __excepts)
|
||||||
{
|
{
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
__uint16_t __status;
|
__uint16_t __status;
|
||||||
@@ -217,7 +228,7 @@ fetestexcept(int __excepts)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fesetround(int __round)
|
__fesetround_int(int __round)
|
||||||
{
|
{
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
__uint16_t __control;
|
__uint16_t __control;
|
||||||
@@ -241,7 +252,7 @@ fesetround(int __round)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fesetenv(const fenv_t *__envp)
|
__fesetenv_int(const fenv_t *__envp)
|
||||||
{
|
{
|
||||||
fenv_t __env = *__envp;
|
fenv_t __env = *__envp;
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
@@ -283,7 +294,7 @@ __feclearexcept_int(int __excepts)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
__fegetexceptflag_int(fexcept_t *__flagp, int __excepts)
|
||||||
{
|
{
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
__uint16_t __status;
|
__uint16_t __status;
|
||||||
@@ -295,7 +306,7 @@ fegetexceptflag(fexcept_t *__flagp, int __excepts)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fetestexcept(int __excepts)
|
__fetestexcept_int(int __excepts)
|
||||||
{
|
{
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
__uint16_t __status;
|
__uint16_t __status;
|
||||||
@@ -306,7 +317,7 @@ fetestexcept(int __excepts)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fesetround(int __round)
|
__fesetround_int(int __round)
|
||||||
{
|
{
|
||||||
__uint32_t __mxcsr;
|
__uint32_t __mxcsr;
|
||||||
__uint16_t __control;
|
__uint16_t __control;
|
||||||
@@ -328,7 +339,7 @@ fesetround(int __round)
|
|||||||
}
|
}
|
||||||
|
|
||||||
__fenv_static inline int
|
__fenv_static inline int
|
||||||
fesetenv(const fenv_t *__envp)
|
__fesetenv_int(const fenv_t *__envp)
|
||||||
{
|
{
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user