1 int cpu_has(unsigned short bit)
3 asm goto ("1: jmp %l[t_no]\n" "2:\n" ".section .altinstructions,\"a\"\n"
4 ".balign 4\n" ".long 1b\n" ".long 0\n" ".word %P0\n" ".byte 2b - 1b\n" ".byte 0\n"
5 ".previous\n"::"i" (bit)::t_no);
11 unsigned int x86_capability[10];
13 extern struct cpuinfo_x86 boot_cpu_data;
14 struct i387_fxsave_struct {
18 struct i387_fxsave_struct fxsave;
22 union thread_xstate *state;
24 __attribute__ ((always_inline)) __attribute__ ((pure))
30 __attribute__ ((always_inline)) __attribute__ ((pure))
35 __attribute__ ((always_inline))
36 void fpu_save_init(struct fpu *fpu)
38 if (__builtin_constant_p(use_xsave())? use_xsave() : use_xsave()) {
42 } else if (use_fxsr()) {
44 if (__builtin_constant_p(
45 (((__builtin_constant_p(fpu->state->fxsave.swd & 1) ?
46 ! !(fpu->state->fxsave.swd & 1) :
57 ! !(((__builtin_constant_p(fpu->state->fxsave.swd & 1) ?
58 ! !(fpu->state->fxsave.swd & 1) :
71 ! !(((__builtin_constant_p(fpu->state->fxsave.swd & 1)
72 ? ! !(fpu->state->fxsave.swd & 1) :
85 asm volatile ("fnclex");
88 void aes_decrypt(void)
91 crypto_aes_decrypt_x86();
96 void (*funcptr)(void) = aes_decrypt;
100 if (crypto_register_alg())
101 crypto_unregister_alg(0);