5 #include <linux/preempt.h>
6 #include <asm/ptrace.h>
9 static inline void release_fpu(struct pt_regs
*regs
)
14 static inline void grab_fpu(struct pt_regs
*regs
)
21 extern void save_fpu(struct task_struct
*__tsk
, struct pt_regs
*regs
);
24 #define release_fpu(regs) do { } while (0)
25 #define grab_fpu(regs) do { } while (0)
27 static inline void save_fpu(struct task_struct
*tsk
, struct pt_regs
*regs
)
29 clear_tsk_thread_flag(tsk
, TIF_USEDFPU
);
33 extern int do_fpu_inst(unsigned short, struct pt_regs
*);
35 static inline void unlazy_fpu(struct task_struct
*tsk
, struct pt_regs
*regs
)
38 if (test_tsk_thread_flag(tsk
, TIF_USEDFPU
))
43 static inline void clear_fpu(struct task_struct
*tsk
, struct pt_regs
*regs
)
46 if (test_tsk_thread_flag(tsk
, TIF_USEDFPU
)) {
47 clear_tsk_thread_flag(tsk
, TIF_USEDFPU
);
53 #endif /* __ASSEMBLY__ */
55 #endif /* __ASM_SH_FPU_H */