Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef __X86_KERNEL_FPU_INTERNAL_H
0003 #define __X86_KERNEL_FPU_INTERNAL_H
0004 
0005 extern struct fpstate init_fpstate;
0006 
0007 /* CPU feature check wrappers */
0008 static __always_inline __pure bool use_xsave(void)
0009 {
0010     return cpu_feature_enabled(X86_FEATURE_XSAVE);
0011 }
0012 
0013 static __always_inline __pure bool use_fxsr(void)
0014 {
0015     return cpu_feature_enabled(X86_FEATURE_FXSR);
0016 }
0017 
0018 #ifdef CONFIG_X86_DEBUG_FPU
0019 # define WARN_ON_FPU(x) WARN_ON_ONCE(x)
0020 #else
0021 # define WARN_ON_FPU(x) ({ (void)(x); 0; })
0022 #endif
0023 
0024 /* Used in init.c */
0025 extern void fpstate_init_user(struct fpstate *fpstate);
0026 extern void fpstate_reset(struct fpu *fpu);
0027 
0028 #endif