|
@@ -55,6 +55,12 @@ extern int save_i387_xstate_ia32(void __user *buf);
|
|
extern int restore_i387_xstate_ia32(void __user *buf);
|
|
extern int restore_i387_xstate_ia32(void __user *buf);
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
+#ifdef CONFIG_MATH_EMULATION
|
|
|
|
+extern void finit_soft_fpu(struct i387_soft_struct *soft);
|
|
|
|
+#else
|
|
|
|
+static inline void finit_soft_fpu(struct i387_soft_struct *soft) {}
|
|
|
|
+#endif
|
|
|
|
+
|
|
#define X87_FSW_ES (1 << 7) /* Exception Summary */
|
|
#define X87_FSW_ES (1 << 7) /* Exception Summary */
|
|
|
|
|
|
static __always_inline __pure bool use_xsaveopt(void)
|
|
static __always_inline __pure bool use_xsaveopt(void)
|
|
@@ -189,12 +195,6 @@ static inline void fpu_save_init(struct fpu *fpu)
|
|
|
|
|
|
#else /* CONFIG_X86_32 */
|
|
#else /* CONFIG_X86_32 */
|
|
|
|
|
|
-#ifdef CONFIG_MATH_EMULATION
|
|
|
|
-extern void finit_soft_fpu(struct i387_soft_struct *soft);
|
|
|
|
-#else
|
|
|
|
-static inline void finit_soft_fpu(struct i387_soft_struct *soft) {}
|
|
|
|
-#endif
|
|
|
|
-
|
|
|
|
/* perform fxrstor iff the processor has extended states, otherwise frstor */
|
|
/* perform fxrstor iff the processor has extended states, otherwise frstor */
|
|
static inline int fxrstor_checking(struct i387_fxsave_struct *fx)
|
|
static inline int fxrstor_checking(struct i387_fxsave_struct *fx)
|
|
{
|
|
{
|