arch/alpha/kernel/process.c
339
int elf_core_copy_task_fpregs(struct task_struct *t, elf_fpregset_t *fpu)
arch/alpha/kernel/process.c
341
memcpy(fpu, task_thread_info(t)->fp, 32 * 8);
arch/arc/include/asm/processor.h
31
struct arc_fpu fpu;
arch/arc/kernel/fpu.c
34
unsigned int *saveto = &prev->thread.fpu.aux_dpfp[0].l;
arch/arc/kernel/fpu.c
35
unsigned int *readfrom = &next->thread.fpu.aux_dpfp[0].l;
arch/arc/kernel/fpu.c
71
struct arc_fpu *save = &prev->thread.fpu;
arch/arc/kernel/fpu.c
72
struct arc_fpu *restore = &next->thread.fpu;
arch/arc/kernel/setup.c
162
struct bcr_fp_arcv2 fpu;
arch/arc/kernel/setup.c
214
READ_BCR(ARC_REG_FP_V2_BCR, fpu);
arch/arc/kernel/setup.c
222
IS_AVAIL1((fpu.sp | fpu.dp), " FPU:"),
arch/arc/kernel/setup.c
223
IS_AVAIL1(fpu.sp, " sp"),
arch/arc/kernel/setup.c
224
IS_AVAIL1(fpu.dp, " dp"));
arch/arc/kernel/setup.c
281
present = fpu.sp | fpu.dp | mpy.dsp; /* DSP and/or FPU */
arch/arm/include/asm/vfpmacros.h
21
.fpu vfpv2
arch/arm/include/asm/vfpmacros.h
28
.fpu vfpv3
arch/arm/include/asm/vfpmacros.h
53
.fpu vfpv3
arch/arm64/kvm/guest.c
855
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/arm64/kvm/guest.c
860
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/csky/kernel/process.c
73
int elf_core_copy_task_fpregs(struct task_struct *t, elf_fpregset_t *fpu)
arch/csky/kernel/process.c
75
memcpy(fpu, ¤t->thread.user_fp, sizeof(*fpu));
arch/loongarch/include/asm/fpu.h
121
_restore_fp(¤t->thread.fpu);
arch/loongarch/include/asm/fpu.h
137
_save_fp(&tsk->thread.fpu);
arch/loongarch/include/asm/fpu.h
165
unsigned int fcsr = current->thread.fpu.fcsr;
arch/loongarch/include/asm/fpu.h
175
_save_fp(&tsk->thread.fpu);
arch/loongarch/include/asm/fpu.h
181
_restore_fp(&tsk->thread.fpu);
arch/loongarch/include/asm/fpu.h
195
_save_lasx(¤t->thread.fpu);
arch/loongarch/include/asm/fpu.h
200
_save_lsx(¤t->thread.fpu);
arch/loongarch/include/asm/fpu.h
204
_save_fp(¤t->thread.fpu);
arch/loongarch/include/asm/fpu.h
232
_save_lsx(&t->thread.fpu);
arch/loongarch/include/asm/fpu.h
238
_restore_lsx(&t->thread.fpu);
arch/loongarch/include/asm/fpu.h
250
_restore_lsx_upper(&t->thread.fpu);
arch/loongarch/include/asm/fpu.h
280
_save_lasx(&t->thread.fpu);
arch/loongarch/include/asm/fpu.h
286
_restore_lasx(&t->thread.fpu);
arch/loongarch/include/asm/fpu.h
298
_restore_lasx_upper(&t->thread.fpu);
arch/loongarch/include/asm/fpu.h
35
asmlinkage void _save_lsx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/fpu.h
36
asmlinkage void _restore_lsx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/fpu.h
38
asmlinkage void _restore_lsx_upper(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/fpu.h
42
asmlinkage void _save_lasx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/fpu.h
43
asmlinkage void _restore_lasx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/fpu.h
45
asmlinkage void _restore_lasx_upper(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_host.h
208
struct loongarch_fpu fpu FPU_ALIGN;
arch/loongarch/include/asm/kvm_vcpu.h
56
void kvm_save_fpu(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
57
void kvm_restore_fpu(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
58
void kvm_restore_fcsr(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
62
void kvm_save_lsx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
63
void kvm_restore_lsx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
66
static inline void kvm_save_lsx(struct loongarch_fpu *fpu) { }
arch/loongarch/include/asm/kvm_vcpu.h
67
static inline void kvm_restore_lsx(struct loongarch_fpu *fpu) { }
arch/loongarch/include/asm/kvm_vcpu.h
72
void kvm_save_lasx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
73
void kvm_restore_lasx(struct loongarch_fpu *fpu);
arch/loongarch/include/asm/kvm_vcpu.h
76
static inline void kvm_save_lasx(struct loongarch_fpu *fpu) { }
arch/loongarch/include/asm/kvm_vcpu.h
77
static inline void kvm_restore_lasx(struct loongarch_fpu *fpu) { }
arch/loongarch/include/asm/processor.h
137
struct loongarch_fpu fpu FPU_ALIGN;
arch/loongarch/include/asm/processor.h
179
.fpu = { \
arch/loongarch/kernel/asm-offsets.c
126
OFFSET(THREAD_FPU, task_struct, thread.fpu);
arch/loongarch/kernel/asm-offsets.c
291
OFFSET(VCPU_FCC, kvm_vcpu_arch, fpu.fcc);
arch/loongarch/kernel/asm-offsets.c
292
OFFSET(VCPU_FCSR0, kvm_vcpu_arch, fpu.fcsr);
arch/loongarch/kernel/kfpu.c
54
_save_lasx(¤t->thread.fpu);
arch/loongarch/kernel/kfpu.c
59
_save_lsx(¤t->thread.fpu);
arch/loongarch/kernel/kfpu.c
63
_save_fp(¤t->thread.fpu);
arch/loongarch/kernel/kfpu.c
79
_restore_lasx(¤t->thread.fpu);
arch/loongarch/kernel/kfpu.c
84
_restore_lsx(¤t->thread.fpu);
arch/loongarch/kernel/kfpu.c
88
_restore_fp(¤t->thread.fpu);
arch/loongarch/kernel/kgdb.c
135
memcpy(mem, (void *)¤t->thread.fpu.fcsr, reg_size);
arch/loongarch/kernel/kgdb.c
138
memcpy(mem, (void *)¤t->thread.fpu.fcc + reg_offset, reg_size);
arch/loongarch/kernel/kgdb.c
141
memcpy(mem, (void *)¤t->thread.fpu.fpr[reg_offset], reg_size);
arch/loongarch/kernel/kgdb.c
176
memcpy((void *)¤t->thread.fpu.fcsr, mem, reg_size);
arch/loongarch/kernel/kgdb.c
179
memcpy((void *)¤t->thread.fpu.fcc + reg_offset, mem, reg_size);
arch/loongarch/kernel/kgdb.c
182
memcpy((void *)¤t->thread.fpu.fpr[reg_offset], mem, reg_size);
arch/loongarch/kernel/process.c
139
memcpy(dst, src, offsetof(struct task_struct, thread.fpu.fpr));
arch/loongarch/kernel/process.c
92
current->thread.fpu.fcsr = boot_cpu_data.fpu_csr0;
arch/loongarch/kernel/ptrace.c
123
return membuf_write(to, &target->thread.fpu.fpr,
arch/loongarch/kernel/ptrace.c
134
fpr_val = get_fpr64(&target->thread.fpu.fpr[i], 0);
arch/loongarch/kernel/ptrace.c
153
if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t))
arch/loongarch/kernel/ptrace.c
158
r = membuf_write(&to, &target->thread.fpu.fcc, sizeof(target->thread.fpu.fcc));
arch/loongarch/kernel/ptrace.c
159
r = membuf_write(&to, &target->thread.fpu.fcsr, sizeof(target->thread.fpu.fcsr));
arch/loongarch/kernel/ptrace.c
169
&target->thread.fpu.fpr,
arch/loongarch/kernel/ptrace.c
187
set_fpr64(&target->thread.fpu.fpr[i], 0, fpr_val);
arch/loongarch/kernel/ptrace.c
212
if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t))
arch/loongarch/kernel/ptrace.c
220
&target->thread.fpu.fcc, fcc_start,
arch/loongarch/kernel/ptrace.c
223
&target->thread.fpu.fcsr, fcsr_start,
arch/loongarch/kernel/ptrace.c
271
membuf_write(to, &target->thread.fpu.fpr[i], cp_sz);
arch/loongarch/kernel/ptrace.c
297
} else if (sizeof(target->thread.fpu.fpr[0]) == regset->size) {
arch/loongarch/kernel/ptrace.c
299
membuf_write(&to, &target->thread.fpu.fpr, wr_size);
arch/loongarch/kernel/ptrace.c
302
copy_pad_fprs(target, regset, &to, sizeof(target->thread.fpu.fpr[0]));
arch/loongarch/kernel/ptrace.c
319
if (sizeof(target->thread.fpu.fpr[0]) == regset->size) {
arch/loongarch/kernel/ptrace.c
322
&target->thread.fpu.fpr,
arch/loongarch/kernel/ptrace.c
327
sizeof(target->thread.fpu.fpr[0]));
arch/loongarch/kernel/ptrace.c
332
&target->thread.fpu.fpr[i],
arch/loongarch/kernel/ptrace.c
354
r = membuf_write(&to, &target->thread.fpu.ftop, sizeof(u32));
arch/loongarch/kernel/ptrace.c
375
&target->thread.fpu.ftop,
arch/loongarch/kernel/ptrace.c
57
memset(&target->thread.fpu.fpr, ~0, sizeof(target->thread.fpu.fpr));
arch/loongarch/kernel/signal.c
109
set_fpr64(¤t->thread.fpu.fpr[i], 0, fpr_val);
arch/loongarch/kernel/signal.c
111
err |= __get_user(current->thread.fpu.fcc, fcc);
arch/loongarch/kernel/signal.c
112
err |= __get_user(current->thread.fpu.fcsr, fcsr);
arch/loongarch/kernel/signal.c
126
err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0),
arch/loongarch/kernel/signal.c
128
err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 1),
arch/loongarch/kernel/signal.c
131
err |= __put_user(current->thread.fpu.fcc, fcc);
arch/loongarch/kernel/signal.c
132
err |= __put_user(current->thread.fpu.fcsr, fcsr);
arch/loongarch/kernel/signal.c
148
set_fpr64(¤t->thread.fpu.fpr[i], 0, fpr_val);
arch/loongarch/kernel/signal.c
150
set_fpr64(¤t->thread.fpu.fpr[i], 1, fpr_val);
arch/loongarch/kernel/signal.c
152
err |= __get_user(current->thread.fpu.fcc, fcc);
arch/loongarch/kernel/signal.c
153
err |= __get_user(current->thread.fpu.fcsr, fcsr);
arch/loongarch/kernel/signal.c
167
err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0),
arch/loongarch/kernel/signal.c
169
err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 1),
arch/loongarch/kernel/signal.c
171
err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 2),
arch/loongarch/kernel/signal.c
173
err |= __put_user(get_fpr64(¤t->thread.fpu.fpr[i], 3),
arch/loongarch/kernel/signal.c
176
err |= __put_user(current->thread.fpu.fcc, fcc);
arch/loongarch/kernel/signal.c
177
err |= __put_user(current->thread.fpu.fcsr, fcsr);
arch/loongarch/kernel/signal.c
193
set_fpr64(¤t->thread.fpu.fpr[i], 0, fpr_val);
arch/loongarch/kernel/signal.c
195
set_fpr64(¤t->thread.fpu.fpr[i], 1, fpr_val);
arch/loongarch/kernel/signal.c
197
set_fpr64(¤t->thread.fpu.fpr[i], 2, fpr_val);
arch/loongarch/kernel/signal.c
199
set_fpr64(¤t->thread.fpu.fpr[i], 3, fpr_val);
arch/loongarch/kernel/signal.c
201
err |= __get_user(current->thread.fpu.fcc, fcc);
arch/loongarch/kernel/signal.c
202
err |= __get_user(current->thread.fpu.fcsr, fcsr);
arch/loongarch/kernel/signal.c
242
return __put_user(current->thread.fpu.ftop, ftop);
arch/loongarch/kernel/signal.c
249
return __get_user(current->thread.fpu.ftop, ftop);
arch/loongarch/kernel/signal.c
370
struct sctx_info __user *info = extctx->fpu.addr;
arch/loongarch/kernel/signal.c
385
err |= __put_user(extctx->fpu.size, &info->size);
arch/loongarch/kernel/signal.c
404
struct sctx_info __user *info = extctx->fpu.addr;
arch/loongarch/kernel/signal.c
63
struct _ctx_layout fpu;
arch/loongarch/kernel/signal.c
685
else if (extctx->fpu.addr)
arch/loongarch/kernel/signal.c
716
extctx->fpu.addr = info;
arch/loongarch/kernel/signal.c
789
else if (extctx.fpu.addr)
arch/loongarch/kernel/signal.c
857
new_sp = extframe_alloc(extctx, &extctx->fpu,
arch/loongarch/kernel/signal.c
89
__put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0),
arch/loongarch/kernel/signal.c
92
err |= __put_user(current->thread.fpu.fcc, fcc);
arch/loongarch/kernel/signal.c
93
err |= __put_user(current->thread.fpu.fcsr, fcsr);
arch/loongarch/kernel/unaligned.c
454
set_fpr64(¤t->thread.fpu.fpr[insn.reg3_format.rd], 0, value);
arch/loongarch/kernel/unaligned.c
464
value = get_fpr64(¤t->thread.fpu.fpr[insn.reg3_format.rd], 0);
arch/loongarch/kvm/vcpu.c
1309
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/loongarch/kvm/vcpu.c
1313
fpu->fcc = vcpu->arch.fpu.fcc;
arch/loongarch/kvm/vcpu.c
1314
fpu->fcsr = vcpu->arch.fpu.fcsr;
arch/loongarch/kvm/vcpu.c
1316
memcpy(&fpu->fpr[i], &vcpu->arch.fpu.fpr[i], FPU_REG_WIDTH / 64);
arch/loongarch/kvm/vcpu.c
1321
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/loongarch/kvm/vcpu.c
1325
vcpu->arch.fpu.fcc = fpu->fcc;
arch/loongarch/kvm/vcpu.c
1326
vcpu->arch.fpu.fcsr = fpu->fcsr;
arch/loongarch/kvm/vcpu.c
1328
memcpy(&vcpu->arch.fpu.fpr[i], &fpu->fpr[i], FPU_REG_WIDTH / 64);
arch/loongarch/kvm/vcpu.c
1387
kvm_check_fcsr(vcpu, vcpu->arch.fpu.fcsr);
arch/loongarch/kvm/vcpu.c
1390
kvm_restore_fpu(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1400
kvm_check_fcsr(vcpu, vcpu->arch.fpu.fcsr);
arch/loongarch/kvm/vcpu.c
1408
_restore_lsx_upper(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1414
kvm_restore_lsx(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1429
kvm_check_fcsr(vcpu, vcpu->arch.fpu.fcsr);
arch/loongarch/kvm/vcpu.c
1435
_restore_lasx_upper(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1439
_restore_lsx_upper(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1440
_restore_lasx_upper(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1444
kvm_restore_lasx(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1462
kvm_save_lasx(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1469
kvm_save_lsx(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
1476
kvm_save_fpu(&vcpu->arch.fpu);
arch/loongarch/kvm/vcpu.c
855
*v = vcpu->arch.fpu.ftop;
arch/loongarch/kvm/vcpu.c
945
vcpu->arch.fpu.ftop = v;
arch/m68k/kernel/process.c
218
int elf_core_copy_task_fpregs(struct task_struct *t, elf_fpregset_t *fpu)
arch/m68k/kernel/process.c
223
memcpy(fpu->fpcntl, current->thread.fpcntl, 12);
arch/m68k/kernel/process.c
224
memcpy(fpu->fpregs, current->thread.fp, 96);
arch/m68k/kernel/process.c
229
fpu->fpregs[i] = ((fpu->fpregs[i] & 0xffff0000) << 15) |
arch/m68k/kernel/process.c
230
((fpu->fpregs[i] & 0x0000ffff) << 16);
arch/m68k/kernel/process.c
248
: "m" (fpu->fpcntl[0]),
arch/m68k/kernel/process.c
249
"m" (fpu->fpcntl[1]),
arch/m68k/kernel/process.c
250
"m" (fpu->fpcntl[2]),
arch/m68k/kernel/process.c
251
"m" (fpu->fpregs[0])
arch/m68k/kernel/process.c
256
: "m" (fpu->fpcntl[0])
arch/m68k/kernel/process.c
260
: "m" (fpu->fpregs[0])
arch/m68k/kernel/setup_mm.c
378
const char *cpu, *mmu, *fpu;
arch/m68k/kernel/setup_mm.c
408
fpu = "none(soft float)";
arch/m68k/kernel/setup_mm.c
411
fpu = "68881";
arch/m68k/kernel/setup_mm.c
413
fpu = "68882";
arch/m68k/kernel/setup_mm.c
415
fpu = "68040";
arch/m68k/kernel/setup_mm.c
417
fpu = "68060";
arch/m68k/kernel/setup_mm.c
419
fpu = "Sun FPA";
arch/m68k/kernel/setup_mm.c
421
fpu = "ColdFire";
arch/m68k/kernel/setup_mm.c
423
fpu = "none";
arch/m68k/kernel/setup_mm.c
451
cpu, mmu, fpu,
arch/m68k/kernel/setup_no.c
174
char *cpu, *mmu, *fpu;
arch/m68k/kernel/setup_no.c
179
fpu = "none";
arch/m68k/kernel/setup_no.c
188
cpu, mmu, fpu,
arch/microblaze/kernel/process.c
136
int elf_core_copy_task_fpregs(struct task_struct *t, elf_fpregset_t *fpu)
arch/mips/include/asm/fpu.h
132
if (current->thread.fpu.fcr31 & FPU_CSR_NAN2008) {
arch/mips/include/asm/fpu.h
184
tsk->thread.fpu.fcr31 =
arch/mips/include/asm/fpu.h
228
memset(&target->thread.fpu.fpr, ~0, sizeof(target->thread.fpu.fpr));
arch/mips/include/asm/fpu.h
263
return tsk->thread.fpu.fpr;
arch/mips/include/asm/kvm_host.h
315
struct mips_fpu_struct fpu;
arch/mips/include/asm/processor.h
240
struct mips_fpu_struct fpu FPU_ALIGN;
arch/mips/include/asm/processor.h
286
.fpu = { \
arch/mips/include/asm/switch_to.h
90
unsigned long fcr31 = mask_fcr31_x(next->thread.fpu.fcr31); \
arch/mips/include/asm/switch_to.h
95
next->thread.fpu.fcr31 &= ~fcr31; \
arch/mips/kernel/asm-offsets.c
152
OFFSET(THREAD_FPU, task_struct, thread.fpu);
arch/mips/kernel/asm-offsets.c
154
OFFSET(THREAD_FPR0, task_struct, thread.fpu.fpr[0]);
arch/mips/kernel/asm-offsets.c
155
OFFSET(THREAD_FPR1, task_struct, thread.fpu.fpr[1]);
arch/mips/kernel/asm-offsets.c
156
OFFSET(THREAD_FPR2, task_struct, thread.fpu.fpr[2]);
arch/mips/kernel/asm-offsets.c
157
OFFSET(THREAD_FPR3, task_struct, thread.fpu.fpr[3]);
arch/mips/kernel/asm-offsets.c
158
OFFSET(THREAD_FPR4, task_struct, thread.fpu.fpr[4]);
arch/mips/kernel/asm-offsets.c
159
OFFSET(THREAD_FPR5, task_struct, thread.fpu.fpr[5]);
arch/mips/kernel/asm-offsets.c
160
OFFSET(THREAD_FPR6, task_struct, thread.fpu.fpr[6]);
arch/mips/kernel/asm-offsets.c
161
OFFSET(THREAD_FPR7, task_struct, thread.fpu.fpr[7]);
arch/mips/kernel/asm-offsets.c
162
OFFSET(THREAD_FPR8, task_struct, thread.fpu.fpr[8]);
arch/mips/kernel/asm-offsets.c
163
OFFSET(THREAD_FPR9, task_struct, thread.fpu.fpr[9]);
arch/mips/kernel/asm-offsets.c
164
OFFSET(THREAD_FPR10, task_struct, thread.fpu.fpr[10]);
arch/mips/kernel/asm-offsets.c
165
OFFSET(THREAD_FPR11, task_struct, thread.fpu.fpr[11]);
arch/mips/kernel/asm-offsets.c
166
OFFSET(THREAD_FPR12, task_struct, thread.fpu.fpr[12]);
arch/mips/kernel/asm-offsets.c
167
OFFSET(THREAD_FPR13, task_struct, thread.fpu.fpr[13]);
arch/mips/kernel/asm-offsets.c
168
OFFSET(THREAD_FPR14, task_struct, thread.fpu.fpr[14]);
arch/mips/kernel/asm-offsets.c
169
OFFSET(THREAD_FPR15, task_struct, thread.fpu.fpr[15]);
arch/mips/kernel/asm-offsets.c
170
OFFSET(THREAD_FPR16, task_struct, thread.fpu.fpr[16]);
arch/mips/kernel/asm-offsets.c
171
OFFSET(THREAD_FPR17, task_struct, thread.fpu.fpr[17]);
arch/mips/kernel/asm-offsets.c
172
OFFSET(THREAD_FPR18, task_struct, thread.fpu.fpr[18]);
arch/mips/kernel/asm-offsets.c
173
OFFSET(THREAD_FPR19, task_struct, thread.fpu.fpr[19]);
arch/mips/kernel/asm-offsets.c
174
OFFSET(THREAD_FPR20, task_struct, thread.fpu.fpr[20]);
arch/mips/kernel/asm-offsets.c
175
OFFSET(THREAD_FPR21, task_struct, thread.fpu.fpr[21]);
arch/mips/kernel/asm-offsets.c
176
OFFSET(THREAD_FPR22, task_struct, thread.fpu.fpr[22]);
arch/mips/kernel/asm-offsets.c
177
OFFSET(THREAD_FPR23, task_struct, thread.fpu.fpr[23]);
arch/mips/kernel/asm-offsets.c
178
OFFSET(THREAD_FPR24, task_struct, thread.fpu.fpr[24]);
arch/mips/kernel/asm-offsets.c
179
OFFSET(THREAD_FPR25, task_struct, thread.fpu.fpr[25]);
arch/mips/kernel/asm-offsets.c
180
OFFSET(THREAD_FPR26, task_struct, thread.fpu.fpr[26]);
arch/mips/kernel/asm-offsets.c
181
OFFSET(THREAD_FPR27, task_struct, thread.fpu.fpr[27]);
arch/mips/kernel/asm-offsets.c
182
OFFSET(THREAD_FPR28, task_struct, thread.fpu.fpr[28]);
arch/mips/kernel/asm-offsets.c
183
OFFSET(THREAD_FPR29, task_struct, thread.fpu.fpr[29]);
arch/mips/kernel/asm-offsets.c
184
OFFSET(THREAD_FPR30, task_struct, thread.fpu.fpr[30]);
arch/mips/kernel/asm-offsets.c
185
OFFSET(THREAD_FPR31, task_struct, thread.fpu.fpr[31]);
arch/mips/kernel/asm-offsets.c
187
OFFSET(THREAD_FCR31, task_struct, thread.fpu.fcr31);
arch/mips/kernel/asm-offsets.c
188
OFFSET(THREAD_MSA_CSR, task_struct, thread.fpu.msacsr);
arch/mips/kernel/asm-offsets.c
370
OFFSET(VCPU_FPR0, kvm_vcpu_arch, fpu.fpr[0]);
arch/mips/kernel/asm-offsets.c
371
OFFSET(VCPU_FPR1, kvm_vcpu_arch, fpu.fpr[1]);
arch/mips/kernel/asm-offsets.c
372
OFFSET(VCPU_FPR2, kvm_vcpu_arch, fpu.fpr[2]);
arch/mips/kernel/asm-offsets.c
373
OFFSET(VCPU_FPR3, kvm_vcpu_arch, fpu.fpr[3]);
arch/mips/kernel/asm-offsets.c
374
OFFSET(VCPU_FPR4, kvm_vcpu_arch, fpu.fpr[4]);
arch/mips/kernel/asm-offsets.c
375
OFFSET(VCPU_FPR5, kvm_vcpu_arch, fpu.fpr[5]);
arch/mips/kernel/asm-offsets.c
376
OFFSET(VCPU_FPR6, kvm_vcpu_arch, fpu.fpr[6]);
arch/mips/kernel/asm-offsets.c
377
OFFSET(VCPU_FPR7, kvm_vcpu_arch, fpu.fpr[7]);
arch/mips/kernel/asm-offsets.c
378
OFFSET(VCPU_FPR8, kvm_vcpu_arch, fpu.fpr[8]);
arch/mips/kernel/asm-offsets.c
379
OFFSET(VCPU_FPR9, kvm_vcpu_arch, fpu.fpr[9]);
arch/mips/kernel/asm-offsets.c
380
OFFSET(VCPU_FPR10, kvm_vcpu_arch, fpu.fpr[10]);
arch/mips/kernel/asm-offsets.c
381
OFFSET(VCPU_FPR11, kvm_vcpu_arch, fpu.fpr[11]);
arch/mips/kernel/asm-offsets.c
382
OFFSET(VCPU_FPR12, kvm_vcpu_arch, fpu.fpr[12]);
arch/mips/kernel/asm-offsets.c
383
OFFSET(VCPU_FPR13, kvm_vcpu_arch, fpu.fpr[13]);
arch/mips/kernel/asm-offsets.c
384
OFFSET(VCPU_FPR14, kvm_vcpu_arch, fpu.fpr[14]);
arch/mips/kernel/asm-offsets.c
385
OFFSET(VCPU_FPR15, kvm_vcpu_arch, fpu.fpr[15]);
arch/mips/kernel/asm-offsets.c
386
OFFSET(VCPU_FPR16, kvm_vcpu_arch, fpu.fpr[16]);
arch/mips/kernel/asm-offsets.c
387
OFFSET(VCPU_FPR17, kvm_vcpu_arch, fpu.fpr[17]);
arch/mips/kernel/asm-offsets.c
388
OFFSET(VCPU_FPR18, kvm_vcpu_arch, fpu.fpr[18]);
arch/mips/kernel/asm-offsets.c
389
OFFSET(VCPU_FPR19, kvm_vcpu_arch, fpu.fpr[19]);
arch/mips/kernel/asm-offsets.c
390
OFFSET(VCPU_FPR20, kvm_vcpu_arch, fpu.fpr[20]);
arch/mips/kernel/asm-offsets.c
391
OFFSET(VCPU_FPR21, kvm_vcpu_arch, fpu.fpr[21]);
arch/mips/kernel/asm-offsets.c
392
OFFSET(VCPU_FPR22, kvm_vcpu_arch, fpu.fpr[22]);
arch/mips/kernel/asm-offsets.c
393
OFFSET(VCPU_FPR23, kvm_vcpu_arch, fpu.fpr[23]);
arch/mips/kernel/asm-offsets.c
394
OFFSET(VCPU_FPR24, kvm_vcpu_arch, fpu.fpr[24]);
arch/mips/kernel/asm-offsets.c
395
OFFSET(VCPU_FPR25, kvm_vcpu_arch, fpu.fpr[25]);
arch/mips/kernel/asm-offsets.c
396
OFFSET(VCPU_FPR26, kvm_vcpu_arch, fpu.fpr[26]);
arch/mips/kernel/asm-offsets.c
397
OFFSET(VCPU_FPR27, kvm_vcpu_arch, fpu.fpr[27]);
arch/mips/kernel/asm-offsets.c
398
OFFSET(VCPU_FPR28, kvm_vcpu_arch, fpu.fpr[28]);
arch/mips/kernel/asm-offsets.c
399
OFFSET(VCPU_FPR29, kvm_vcpu_arch, fpu.fpr[29]);
arch/mips/kernel/asm-offsets.c
400
OFFSET(VCPU_FPR30, kvm_vcpu_arch, fpu.fpr[30]);
arch/mips/kernel/asm-offsets.c
401
OFFSET(VCPU_FPR31, kvm_vcpu_arch, fpu.fpr[31]);
arch/mips/kernel/asm-offsets.c
403
OFFSET(VCPU_FCR31, kvm_vcpu_arch, fpu.fcr31);
arch/mips/kernel/asm-offsets.c
404
OFFSET(VCPU_MSA_CSR, kvm_vcpu_arch, fpu.msacsr);
arch/mips/kernel/branch.c
156
fcr31 = current->thread.fpu.fcr31;
arch/mips/kernel/branch.c
696
bit = get_fpr32(¤t->thread.fpu.fpr[reg], 0) & 0x1;
arch/mips/kernel/branch.c
714
fcr31 = current->thread.fpu.fcr31;
arch/mips/kernel/elf.c
318
t->thread.fpu.fcr31 = c->fpu_csr31;
arch/mips/kernel/elf.c
322
t->thread.fpu.fcr31 &= ~FPU_CSR_NAN2008;
arch/mips/kernel/elf.c
324
t->thread.fpu.fcr31 &= ~FPU_CSR_ABS2008;
arch/mips/kernel/elf.c
328
t->thread.fpu.fcr31 |= FPU_CSR_NAN2008;
arch/mips/kernel/elf.c
330
t->thread.fpu.fcr31 |= FPU_CSR_ABS2008;
arch/mips/kernel/kgdb.c
146
memcpy((void *)¤t->thread.fpu.fcr31, mem,
arch/mips/kernel/kgdb.c
154
memcpy((void *)¤t->thread.fpu.fpr[fp_reg], mem,
arch/mips/kernel/kgdb.c
181
memcpy(mem, (void *)¤t->thread.fpu.fcr31,
arch/mips/kernel/kgdb.c
190
memcpy(mem, (void *)¤t->thread.fpu.fpr[fp_reg],
arch/mips/kernel/mips-r2-to-r6-emul.c
1178
err = fpu_emulator_cop1Handler(regs, ¤t->thread.fpu, 0,
arch/mips/kernel/mips-r2-to-r6-emul.c
1185
*fcr31 = res = mask_fcr31_x(current->thread.fpu.fcr31);
arch/mips/kernel/mips-r2-to-r6-emul.c
1186
current->thread.fpu.fcr31 &= ~res;
arch/mips/kernel/mips-r2-to-r6-emul.c
204
csr = current->thread.fpu.fcr31;
arch/mips/kernel/mips-r2-to-r6-emul.c
227
csr = current->thread.fpu.fcr31;
arch/mips/kernel/ptrace.c
1138
tmp = child->thread.fpu.fcr31;
arch/mips/kernel/ptrace.c
354
fcr31 = child->thread.fpu.fcr31;
arch/mips/kernel/ptrace.c
356
child->thread.fpu.fcr31 = (value & ~mask) | (fcr31 & mask);
arch/mips/kernel/ptrace.c
376
__put_user(child->thread.fpu.fcr31, data + 64);
arch/mips/kernel/ptrace.c
416
membuf_write(to, &target->thread.fpu,
arch/mips/kernel/ptrace.c
432
membuf_store(to, get_fpr64(&target->thread.fpu.fpr[i], 0));
arch/mips/kernel/ptrace.c
444
if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t))
arch/mips/kernel/ptrace.c
449
membuf_write(&to, &target->thread.fpu.fcr31, sizeof(u32));
arch/mips/kernel/ptrace.c
464
&target->thread.fpu,
arch/mips/kernel/ptrace.c
489
set_fpr64(&target->thread.fpu.fpr[i], 0, fpr_val);
arch/mips/kernel/ptrace.c
524
if (sizeof(target->thread.fpu.fpr[0]) == sizeof(elf_fpreg_t))
arch/mips/kernel/ptrace.c
616
membuf_write(to, &target->thread.fpu.fpr[i], cp_sz);
arch/mips/kernel/ptrace.c
629
.fcsr = target->thread.fpu.fcr31,
arch/mips/kernel/ptrace.c
631
.msacsr = target->thread.fpu.msacsr,
arch/mips/kernel/ptrace.c
640
} else if (sizeof(target->thread.fpu.fpr[0]) == regset->size) {
arch/mips/kernel/ptrace.c
642
membuf_write(&to, &target->thread.fpu.fpr, wr_size);
arch/mips/kernel/ptrace.c
646
sizeof(target->thread.fpu.fpr[0]));
arch/mips/kernel/ptrace.c
664
if (sizeof(target->thread.fpu.fpr[0]) == regset->size) {
arch/mips/kernel/ptrace.c
667
&target->thread.fpu.fpr,
arch/mips/kernel/ptrace.c
672
sizeof(target->thread.fpu.fpr[0]));
arch/mips/kernel/ptrace.c
677
&target->thread.fpu.fpr[i],
arch/mips/kernel/ptrace.c
686
target->thread.fpu.fcr31 = ctrl_regs.fcsr & ~FPU_CSR_ALL_X;
arch/mips/kernel/ptrace.c
687
target->thread.fpu.msacsr = ctrl_regs.msacsr & ~MSA_CSR_CAUSEF;
arch/mips/kernel/ptrace32.c
117
tmp = child->thread.fpu.fcr31;
arch/mips/kernel/ptrace32.c
215
memset(&child->thread.fpu, ~0,
arch/mips/kernel/ptrace32.c
216
sizeof(child->thread.fpu));
arch/mips/kernel/ptrace32.c
217
child->thread.fpu.fcr31 = 0;
arch/mips/kernel/ptrace32.c
233
child->thread.fpu.fcr31 = data;
arch/mips/kernel/signal.c
102
set_fpr64(¤t->thread.fpu.fpr[i], 0, fpr_val);
arch/mips/kernel/signal.c
104
err |= __get_user(current->thread.fpu.fcr31, csr);
arch/mips/kernel/signal.c
195
err = __put_user(current->thread.fpu.msacsr, &msa->csr);
arch/mips/kernel/signal.c
198
val = get_fpr64(¤t->thread.fpu.fpr[i], 1);
arch/mips/kernel/signal.c
241
current->thread.fpu.msacsr = csr;
arch/mips/kernel/signal.c
245
set_fpr64(¤t->thread.fpu.fpr[i], 1, val);
arch/mips/kernel/signal.c
82
__put_user(get_fpr64(¤t->thread.fpu.fpr[i], 0),
arch/mips/kernel/signal.c
85
err |= __put_user(current->thread.fpu.fcr31, csr);
arch/mips/kernel/traps.c
1295
write_msa_csr(current->thread.fpu.msacsr);
arch/mips/kernel/traps.c
1349
write_msa_csr(current->thread.fpu.msacsr);
arch/mips/kernel/traps.c
1386
current->thread.fpu.fcr31);
arch/mips/kernel/traps.c
1478
sig = fpu_emulator_cop1Handler(regs, ¤t->thread.fpu, 0,
arch/mips/kernel/traps.c
1485
fcr31 = mask_fcr31_x(current->thread.fpu.fcr31);
arch/mips/kernel/traps.c
1486
current->thread.fpu.fcr31 &= ~fcr31;
arch/mips/kernel/traps.c
854
sig = fpu_emulator_cop1Handler(regs, ¤t->thread.fpu, 1,
arch/mips/kernel/traps.c
861
fcr31 = mask_fcr31_x(current->thread.fpu.fcr31);
arch/mips/kernel/traps.c
862
current->thread.fpu.fcr31 &= ~fcr31;
arch/mips/kernel/traps.c
906
sig = fpu_emulator_cop1Handler(regs, ¤t->thread.fpu, 1,
arch/mips/kernel/traps.c
913
fcr31 = mask_fcr31_x(current->thread.fpu.fcr31);
arch/mips/kernel/traps.c
914
current->thread.fpu.fcr31 &= ~fcr31;
arch/mips/kernel/unaligned.c
447
res = fpu_emulator_cop1Handler(regs, ¤t->thread.fpu, 1,
arch/mips/kernel/unaligned.c
479
fpr = ¤t->thread.fpu.fpr[wd];
arch/mips/kernel/unaligned.c
968
res = fpu_emulator_cop1Handler(regs, ¤t->thread.fpu, 1,
arch/mips/kvm/entry.c
611
uasm_i_sw(&p, GPR_T0, offsetof(struct kvm_vcpu_arch, fpu.fcr31),
arch/mips/kvm/entry.c
627
uasm_i_sw(&p, GPR_T0, offsetof(struct kvm_vcpu_arch, fpu.msacsr),
arch/mips/kvm/mips.c
1015
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/mips/kvm/mips.c
1020
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/mips/kvm/mips.c
650
struct mips_fpu_struct *fpu = &vcpu->arch.fpu;
arch/mips/kvm/mips.c
680
v = get_fpr32(&fpu->fpr[idx], 0);
arch/mips/kvm/mips.c
682
v = get_fpr32(&fpu->fpr[idx & ~1], idx & 1);
arch/mips/kvm/mips.c
691
v = get_fpr64(&fpu->fpr[idx], 0);
arch/mips/kvm/mips.c
701
v = fpu->fcr31;
arch/mips/kvm/mips.c
714
vs[0] = get_fpr64(&fpu->fpr[idx], 0);
arch/mips/kvm/mips.c
715
vs[1] = get_fpr64(&fpu->fpr[idx], 1);
arch/mips/kvm/mips.c
718
vs[0] = get_fpr64(&fpu->fpr[idx], 1);
arch/mips/kvm/mips.c
719
vs[1] = get_fpr64(&fpu->fpr[idx], 0);
arch/mips/kvm/mips.c
730
v = fpu->msacsr;
arch/mips/kvm/mips.c
762
struct mips_fpu_struct *fpu = &vcpu->arch.fpu;
arch/mips/kvm/mips.c
814
set_fpr32(&fpu->fpr[idx], 0, v);
arch/mips/kvm/mips.c
816
set_fpr32(&fpu->fpr[idx & ~1], idx & 1, v);
arch/mips/kvm/mips.c
825
set_fpr64(&fpu->fpr[idx], 0, v);
arch/mips/kvm/mips.c
835
fpu->fcr31 = v;
arch/mips/kvm/mips.c
845
set_fpr64(&fpu->fpr[idx], 0, vs[0]);
arch/mips/kvm/mips.c
846
set_fpr64(&fpu->fpr[idx], 1, vs[1]);
arch/mips/kvm/mips.c
849
set_fpr64(&fpu->fpr[idx], 1, vs[0]);
arch/mips/kvm/mips.c
850
set_fpr64(&fpu->fpr[idx], 0, vs[1]);
arch/mips/kvm/mips.c
861
fpu->msacsr = v;
arch/mips/loongson64/cop2-ex.c
131
value_next = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rq], 0);
arch/mips/loongson64/cop2-ex.c
137
value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rt], 0);
arch/mips/loongson64/cop2-ex.c
203
set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0, value);
arch/mips/loongson64/cop2-ex.c
219
set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0, value);
arch/mips/loongson64/cop2-ex.c
283
value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0);
arch/mips/loongson64/cop2-ex.c
301
value = get_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lsdc2_format.rt], 0);
arch/mips/loongson64/cop2-ex.c
98
set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rt], 0, value);
arch/mips/loongson64/cop2-ex.c
99
set_fpr64(¤t->thread.fpu.fpr[insn.loongson3_lswc2_format.rq], 0, value_next);
arch/mips/math-emu/cp1emu.c
1191
fpr = ¤t->thread.fpu.fpr[MIPSInst_RT(ir)];
arch/mips/math-emu/cp1emu.c
706
fpr = ¤t->thread.fpu.fpr[insn.i_format.rt];
arch/mips/math-emu/cp1emu.c
736
fcr31 = current->thread.fpu.fcr31;
arch/mips/math-emu/ieee754.h
170
#define ieee754_csr (*(struct _ieee754_csr *)(¤t->thread.fpu.fcr31))
arch/powerpc/kvm/book3s.c
608
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/powerpc/kvm/book3s.c
613
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/powerpc/kvm/booke.c
1796
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/powerpc/kvm/booke.c
1801
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/riscv/kvm/vcpu.c
321
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/riscv/kvm/vcpu.c
326
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/s390/include/asm/fpu.h
277
static inline void fpregs_store(_s390_fp_regs *fpregs, struct fpu *fpu)
arch/s390/include/asm/fpu.h
280
fpregs->fpc = fpu->fpc;
arch/s390/include/asm/fpu.h
281
convert_vx_to_fp((freg_t *)&fpregs->fprs, fpu->vxrs);
arch/s390/include/asm/fpu.h
284
static inline void fpregs_load(_s390_fp_regs *fpregs, struct fpu *fpu)
arch/s390/include/asm/fpu.h
286
fpu->fpc = fpregs->fpc;
arch/s390/include/asm/fpu.h
287
convert_fp_to_vx(fpu->vxrs, (freg_t *)&fpregs->fprs);
arch/s390/include/asm/fpu.h
77
void load_fpu_state(struct fpu *state, int flags);
arch/s390/include/asm/fpu.h
78
void save_fpu_state(struct fpu *state, int flags);
arch/s390/include/asm/processor.h
198
struct fpu ufpu; /* User FP and VX register save area */
arch/s390/include/asm/processor.h
199
struct fpu kfpu; /* Kernel FP and VX register save area */
arch/s390/kernel/fpu.c
112
void load_fpu_state(struct fpu *state, int flags)
arch/s390/kernel/fpu.c
154
void save_fpu_state(struct fpu *state, int flags)
arch/s390/kernel/sysinfo.c
393
DECLARE_KERNEL_FPU_ONSTACK16(fpu);
arch/s390/kernel/sysinfo.c
413
kernel_fpu_begin(&fpu, KERNEL_FPR);
arch/s390/kernel/sysinfo.c
422
kernel_fpu_end(&fpu, KERNEL_FPR);
arch/s390/kvm/kvm-s390.c
4072
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/s390/kvm/kvm-s390.c
4076
vcpu->run->s.regs.fpc = fpu->fpc;
arch/s390/kvm/kvm-s390.c
4079
(freg_t *) fpu->fprs);
arch/s390/kvm/kvm-s390.c
4081
memcpy(vcpu->run->s.regs.fprs, &fpu->fprs, sizeof(fpu->fprs));
arch/s390/kvm/kvm-s390.c
4087
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/s390/kvm/kvm-s390.c
4092
convert_vx_to_fp((freg_t *) fpu->fprs,
arch/s390/kvm/kvm-s390.c
4095
memcpy(fpu->fprs, vcpu->run->s.regs.fprs, sizeof(fpu->fprs));
arch/s390/kvm/kvm-s390.c
4096
fpu->fpc = vcpu->run->s.regs.fpc;
arch/s390/kvm/kvm-s390.c
4918
DECLARE_KERNEL_FPU_ONSTACK32(fpu);
arch/s390/kvm/kvm-s390.c
4960
kernel_fpu_begin(&fpu, KERNEL_FPC | KERNEL_VXR);
arch/s390/kvm/kvm-s390.c
4985
kernel_fpu_end(&fpu, KERNEL_FPC | KERNEL_VXR);
arch/sh/include/asm/user.h
40
struct user_fpu_struct fpu; /* Math Co-processor registers */
arch/sh/kernel/cpu/init.c
52
onchip_setup(fpu);
arch/sh/kernel/cpu/sh2a/fpu.c
377
denormal_to_double (struct sh_fpu_hard_struct *fpu, int n)
arch/sh/kernel/cpu/sh2a/fpu.c
380
unsigned long x = fpu->fpul;
arch/sh/kernel/cpu/sh2a/fpu.c
393
fpu->fp_regs[n] = du;
arch/sh/kernel/cpu/sh2a/fpu.c
394
fpu->fp_regs[n+1] = dl;
arch/sh/kernel/cpu/sh4/fpu.c
146
static void denormal_to_double(struct sh_fpu_hard_struct *fpu, int n)
arch/sh/kernel/cpu/sh4/fpu.c
149
unsigned long x = fpu->fpul;
arch/sh/kernel/cpu/sh4/fpu.c
162
fpu->fp_regs[n] = du;
arch/sh/kernel/cpu/sh4/fpu.c
163
fpu->fp_regs[n + 1] = dl;
arch/sh/kernel/ptrace_32.c
356
else if (addr >= offsetof(struct user, fpu) &&
arch/sh/kernel/ptrace_32.c
359
if (addr == offsetof(struct user, fpu.fpscr))
arch/sh/kernel/ptrace_32.c
368
index = addr - offsetof(struct user, fpu);
arch/sh/kernel/ptrace_32.c
396
else if (addr >= offsetof(struct user, fpu) &&
arch/sh/kernel/ptrace_32.c
402
index = addr - offsetof(struct user, fpu);
arch/sh/math-emu/math.c
476
static void fpu_init(struct sh_fpu_soft_struct *fpu)
arch/sh/math-emu/math.c
480
fpu->fpscr = FPSCR_INIT;
arch/sh/math-emu/math.c
481
fpu->fpul = 0;
arch/sh/math-emu/math.c
484
fpu->fp_regs[i] = 0;
arch/sh/math-emu/math.c
485
fpu->xfp_regs[i]= 0;
arch/sh/math-emu/math.c
497
struct sh_fpu_soft_struct *fpu = &(tsk->thread.xstate->softfpu);
arch/sh/math-emu/math.c
503
fpu_init(fpu);
arch/sh/math-emu/math.c
507
return fpu_emulate(inst, fpu, regs);
arch/sparc/kernel/cpu.c
283
const struct fpu_info *fpu;
arch/sparc/kernel/cpu.c
296
fpu = &manuf->fpu_info[0];
arch/sparc/kernel/cpu.c
297
while (fpu->fp_vers != -1)
arch/sparc/kernel/cpu.c
299
if (fpu->fp_vers == fpu_vers) {
arch/sparc/kernel/cpu.c
300
sparc_fpu_type = fpu->name;
arch/sparc/kernel/cpu.c
303
fpu++;
arch/sparc/kernel/sigutil.h
5
int save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu);
arch/sparc/kernel/sigutil.h
6
int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu);
arch/sparc/kernel/sigutil_32.c
15
int save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu)
arch/sparc/kernel/sigutil_32.c
35
err |= __copy_to_user(&fpu->si_float_regs[0],
arch/sparc/kernel/sigutil_32.c
38
err |= __put_user(current->thread.fsr, &fpu->si_fsr);
arch/sparc/kernel/sigutil_32.c
39
err |= __put_user(current->thread.fpqdepth, &fpu->si_fpqdepth);
arch/sparc/kernel/sigutil_32.c
41
err |= __copy_to_user(&fpu->si_fpqueue[0],
arch/sparc/kernel/sigutil_32.c
49
int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu)
arch/sparc/kernel/sigutil_32.c
53
if (((unsigned long) fpu) & 3)
arch/sparc/kernel/sigutil_32.c
68
if (!access_ok(fpu, sizeof(*fpu)))
arch/sparc/kernel/sigutil_32.c
71
err = __copy_from_user(¤t->thread.float_regs[0], &fpu->si_float_regs[0],
arch/sparc/kernel/sigutil_32.c
73
err |= __get_user(current->thread.fsr, &fpu->si_fsr);
arch/sparc/kernel/sigutil_32.c
74
err |= __get_user(current->thread.fpqdepth, &fpu->si_fpqdepth);
arch/sparc/kernel/sigutil_32.c
77
&fpu->si_fpqueue[0],
arch/sparc/kernel/sigutil_64.c
15
int save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu)
arch/sparc/kernel/sigutil_64.c
23
err |= copy_to_user(&fpu->si_float_regs[0], fpregs,
arch/sparc/kernel/sigutil_64.c
26
err |= copy_to_user(&fpu->si_float_regs[32], fpregs+16,
arch/sparc/kernel/sigutil_64.c
28
err |= __put_user(current_thread_info()->xfsr[0], &fpu->si_fsr);
arch/sparc/kernel/sigutil_64.c
29
err |= __put_user(current_thread_info()->gsr[0], &fpu->si_gsr);
arch/sparc/kernel/sigutil_64.c
30
err |= __put_user(fprs, &fpu->si_fprs);
arch/sparc/kernel/sigutil_64.c
35
int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu)
arch/sparc/kernel/sigutil_64.c
41
if (((unsigned long) fpu) & 7)
arch/sparc/kernel/sigutil_64.c
44
err = get_user(fprs, &fpu->si_fprs);
arch/sparc/kernel/sigutil_64.c
48
err |= copy_from_user(fpregs, &fpu->si_float_regs[0],
arch/sparc/kernel/sigutil_64.c
51
err |= copy_from_user(fpregs+16, &fpu->si_float_regs[32],
arch/sparc/kernel/sigutil_64.c
53
err |= __get_user(current_thread_info()->xfsr[0], &fpu->si_fsr);
arch/sparc/kernel/sigutil_64.c
54
err |= __get_user(current_thread_info()->gsr[0], &fpu->si_gsr);
arch/x86/include/asm/fpu/api.h
112
extern int fpu__exception_code(struct fpu *fpu, int trap_nr);
arch/x86/include/asm/fpu/api.h
113
extern void fpu_sync_fpstate(struct fpu *fpu);
arch/x86/include/asm/fpu/api.h
130
DECLARE_PER_CPU(struct fpu *, fpu_fpregs_owner_ctx);
arch/x86/include/asm/fpu/api.h
134
extern void fpstate_free(struct fpu *fpu);
arch/x86/include/asm/fpu/api.h
136
static inline void fpstate_free(struct fpu *fpu) { }
arch/x86/include/asm/fpu/sched.h
12
extern void save_fpregs_to_fpstate(struct fpu *fpu);
arch/x86/include/asm/fpu/sched.h
37
struct fpu *old_fpu = x86_task_fpu(old);
arch/x86/include/asm/fpu/signal.h
33
extern void fpu__clear_user_states(struct fpu *fpu);
arch/x86/include/asm/processor.h
520
extern struct fpu *x86_task_fpu(struct task_struct *task);
arch/x86/include/asm/processor.h
522
# define x86_task_fpu(task) ((struct fpu *)((void *)(task) + sizeof(*(task))))
arch/x86/include/asm/trace/fpu.h
11
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
12
TP_ARGS(fpu),
arch/x86/include/asm/trace/fpu.h
15
__field(struct fpu *, fpu)
arch/x86/include/asm/trace/fpu.h
22
__entry->fpu = fpu;
arch/x86/include/asm/trace/fpu.h
25
__entry->xfeatures = fpu->fpstate->regs.xsave.header.xfeatures;
arch/x86/include/asm/trace/fpu.h
26
__entry->xcomp_bv = fpu->fpstate->regs.xsave.header.xcomp_bv;
arch/x86/include/asm/trace/fpu.h
30
__entry->fpu,
arch/x86/include/asm/trace/fpu.h
38
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
39
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
43
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
44
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
48
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
49
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
53
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
54
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
58
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
59
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
63
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
64
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
68
TP_PROTO(struct fpu *fpu),
arch/x86/include/asm/trace/fpu.h
69
TP_ARGS(fpu)
arch/x86/include/asm/trace/fpu.h
75
#define TRACE_INCLUDE_FILE fpu
arch/x86/kernel/fpu/context.h
31
static inline void __fpu_invalidate_fpregs_state(struct fpu *fpu)
arch/x86/kernel/fpu/context.h
33
fpu->last_cpu = -1;
arch/x86/kernel/fpu/context.h
36
static inline int fpregs_state_valid(struct fpu *fpu, unsigned int cpu)
arch/x86/kernel/fpu/context.h
38
return fpu == this_cpu_read(fpu_fpregs_owner_ctx) && cpu == fpu->last_cpu;
arch/x86/kernel/fpu/context.h
41
static inline void fpregs_deactivate(struct fpu *fpu)
arch/x86/kernel/fpu/context.h
44
trace_x86_fpu_regs_deactivated(fpu);
arch/x86/kernel/fpu/context.h
47
static inline void fpregs_activate(struct fpu *fpu)
arch/x86/kernel/fpu/context.h
49
__this_cpu_write(fpu_fpregs_owner_ctx, fpu);
arch/x86/kernel/fpu/context.h
50
trace_x86_fpu_regs_activated(fpu);
arch/x86/kernel/fpu/context.h
56
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/context.h
62
if (!fpregs_state_valid(fpu, cpu)) {
arch/x86/kernel/fpu/context.h
74
restore_fpregs_from_fpstate(fpu->fpstate, XFEATURE_MASK_FPSTATE);
arch/x86/kernel/fpu/context.h
76
fpregs_activate(fpu);
arch/x86/kernel/fpu/context.h
77
fpu->last_cpu = cpu;
arch/x86/kernel/fpu/core.c
118
static void update_avx_timestamp(struct fpu *fpu)
arch/x86/kernel/fpu/core.c
123
if (fpu->fpstate->regs.xsave.header.xfeatures & AVX512_TRACKING_MASK)
arch/x86/kernel/fpu/core.c
124
fpu->avx512_timestamp = jiffies;
arch/x86/kernel/fpu/core.c
141
void save_fpregs_to_fpstate(struct fpu *fpu)
arch/x86/kernel/fpu/core.c
144
os_xsave(fpu->fpstate);
arch/x86/kernel/fpu/core.c
145
update_avx_timestamp(fpu);
arch/x86/kernel/fpu/core.c
150
fxsave(&fpu->fpstate->regs.fxsave);
arch/x86/kernel/fpu/core.c
158
asm volatile("fnsave %[fp]; fwait" : [fp] "=m" (fpu->fpstate->regs.fsave));
arch/x86/kernel/fpu/core.c
159
frstor(&fpu->fpstate->regs.fsave);
arch/x86/kernel/fpu/core.c
377
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/core.c
378
struct fpstate *cur_fps = fpu->fpstate;
arch/x86/kernel/fpu/core.c
382
save_fpregs_to_fpstate(fpu);
arch/x86/kernel/fpu/core.c
386
fpu->__task_fpstate = cur_fps;
arch/x86/kernel/fpu/core.c
387
fpu->fpstate = guest_fps;
arch/x86/kernel/fpu/core.c
391
fpu->fpstate = fpu->__task_fpstate;
arch/x86/kernel/fpu/core.c
392
fpu->__task_fpstate = NULL;
arch/x86/kernel/fpu/core.c
395
cur_fps = fpu->fpstate;
arch/x86/kernel/fpu/core.c
514
void fpu_sync_fpstate(struct fpu *fpu)
arch/x86/kernel/fpu/core.c
516
WARN_ON_FPU(fpu != x86_task_fpu(current));
arch/x86/kernel/fpu/core.c
519
trace_x86_fpu_before_save(fpu);
arch/x86/kernel/fpu/core.c
522
save_fpregs_to_fpstate(fpu);
arch/x86/kernel/fpu/core.c
524
trace_x86_fpu_after_save(fpu);
arch/x86/kernel/fpu/core.c
58
DEFINE_PER_CPU(struct fpu *, fpu_fpregs_owner_ctx);
arch/x86/kernel/fpu/core.c
600
void fpstate_reset(struct fpu *fpu)
arch/x86/kernel/fpu/core.c
603
fpu->fpstate = &fpu->__fpstate;
arch/x86/kernel/fpu/core.c
604
__fpstate_reset(fpu->fpstate);
arch/x86/kernel/fpu/core.c
607
fpu->perm.__state_perm = fpu_kernel_cfg.default_features;
arch/x86/kernel/fpu/core.c
608
fpu->perm.__state_size = fpu_kernel_cfg.default_size;
arch/x86/kernel/fpu/core.c
609
fpu->perm.__user_state_size = fpu_user_cfg.default_size;
arch/x86/kernel/fpu/core.c
61
struct fpu *x86_task_fpu(struct task_struct *task)
arch/x86/kernel/fpu/core.c
611
fpu->guest_perm.__state_perm = guest_default_cfg.features;
arch/x86/kernel/fpu/core.c
612
fpu->guest_perm.__state_size = guest_default_cfg.size;
arch/x86/kernel/fpu/core.c
617
fpu->guest_perm.__user_state_size = fpu_user_cfg.default_size;
arch/x86/kernel/fpu/core.c
620
static inline void fpu_inherit_perms(struct fpu *dst_fpu)
arch/x86/kernel/fpu/core.c
623
struct fpu *src_fpu = x86_task_fpu(current->group_leader);
arch/x86/kernel/fpu/core.c
671
struct fpu *dst_fpu = (void *)dst + sizeof(*dst);
arch/x86/kernel/fpu/core.c
751
*offset += offsetof(struct fpu, __fpstate.regs);
arch/x86/kernel/fpu/core.c
766
struct fpu *fpu;
arch/x86/kernel/fpu/core.c
771
fpu = x86_task_fpu(tsk);
arch/x86/kernel/fpu/core.c
775
if (fpu == x86_task_fpu(current)) {
arch/x86/kernel/fpu/core.c
780
fpregs_deactivate(fpu);
arch/x86/kernel/fpu/core.c
783
trace_x86_fpu_dropped(fpu);
arch/x86/kernel/fpu/core.c
809
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/core.c
812
__fpu_invalidate_fpregs_state(fpu);
arch/x86/kernel/fpu/core.c
826
memcpy(&fpu->fpstate->regs, &init_fpstate.regs, init_fpstate_copy_size());
arch/x86/kernel/fpu/core.c
836
void fpu__clear_user_states(struct fpu *fpu)
arch/x86/kernel/fpu/core.c
838
WARN_ON_FPU(fpu != x86_task_fpu(current));
arch/x86/kernel/fpu/core.c
852
!fpregs_state_valid(fpu, smp_processor_id()))
arch/x86/kernel/fpu/core.c
853
os_xrstor_supervisor(fpu->fpstate);
arch/x86/kernel/fpu/core.c
856
xfd_update_state(fpu->fpstate);
arch/x86/kernel/fpu/core.c
915
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/core.c
920
WARN_ON_FPU(!fpregs_state_valid(fpu, smp_processor_id()));
arch/x86/kernel/fpu/core.c
927
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/core.c
929
fpregs_activate(fpu);
arch/x86/kernel/fpu/core.c
930
fpu->last_cpu = smp_processor_id();
arch/x86/kernel/fpu/core.c
938
int fpu__exception_code(struct fpu *fpu, int trap_nr)
arch/x86/kernel/fpu/core.c
955
cwd = fpu->fpstate->regs.fxsave.cwd;
arch/x86/kernel/fpu/core.c
956
swd = fpu->fpstate->regs.fxsave.swd;
arch/x86/kernel/fpu/core.c
958
cwd = (unsigned short)fpu->fpstate->regs.fsave.cwd;
arch/x86/kernel/fpu/core.c
959
swd = (unsigned short)fpu->fpstate->regs.fsave.swd;
arch/x86/kernel/fpu/core.c
973
mxcsr = fpu->fpstate->regs.fxsave.mxcsr;
arch/x86/kernel/fpu/init.c
157
task_size += sizeof(struct fpu);
arch/x86/kernel/fpu/init.c
175
CHECK_MEMBER_AT_END_OF(struct fpu, __fpstate);
arch/x86/kernel/fpu/internal.h
26
extern void fpstate_reset(struct fpu *fpu);
arch/x86/kernel/fpu/regset.c
113
fpu_force_restore(fpu);
arch/x86/kernel/fpu/regset.c
116
memcpy(&fpu->fpstate->regs.fxsave, &newstate, sizeof(newstate));
arch/x86/kernel/fpu/regset.c
119
BUILD_BUG_ON(sizeof(fpu->__fpstate.regs.fxsave.xmm_space) != 16 * 16);
arch/x86/kernel/fpu/regset.c
121
memset(&fpu->fpstate->regs.fxsave.xmm_space[8*4], 0, 8 * 16);
arch/x86/kernel/fpu/regset.c
125
fpu->fpstate->regs.xsave.header.xfeatures |= XFEATURE_MASK_FPSSE;
arch/x86/kernel/fpu/regset.c
146
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/regset.c
170
fpu_force_restore(fpu);
arch/x86/kernel/fpu/regset.c
171
ret = copy_uabi_from_kernel_to_xstate(fpu->fpstate, kbuf ?: tmpbuf, &target->thread.pkru);
arch/x86/kernel/fpu/regset.c
190
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/regset.c
197
sync_fpstate(fpu);
arch/x86/kernel/fpu/regset.c
198
cetregs = get_xsave_addr(&fpu->fpstate->regs.xsave, XFEATURE_CET_USER);
arch/x86/kernel/fpu/regset.c
217
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/regset.c
218
struct xregs_state *xsave = &fpu->fpstate->regs.xsave;
arch/x86/kernel/fpu/regset.c
241
fpu_force_restore(fpu);
arch/x86/kernel/fpu/regset.c
404
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/regset.c
408
sync_fpstate(fpu);
arch/x86/kernel/fpu/regset.c
414
return membuf_write(&to, &fpu->fpstate->regs.fsave,
arch/x86/kernel/fpu/regset.c
425
fx = &fpu->fpstate->regs.fxsave;
arch/x86/kernel/fpu/regset.c
436
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/regset.c
451
fpu_force_restore(fpu);
arch/x86/kernel/fpu/regset.c
454
convert_to_fxsr(&fpu->fpstate->regs.fxsave, &env);
arch/x86/kernel/fpu/regset.c
456
memcpy(&fpu->fpstate->regs.fsave, &env, sizeof(env));
arch/x86/kernel/fpu/regset.c
46
static void sync_fpstate(struct fpu *fpu)
arch/x86/kernel/fpu/regset.c
463
fpu->fpstate->regs.xsave.header.xfeatures |= XFEATURE_MASK_FP;
arch/x86/kernel/fpu/regset.c
48
if (fpu == x86_task_fpu(current))
arch/x86/kernel/fpu/regset.c
49
fpu_sync_fpstate(fpu);
arch/x86/kernel/fpu/regset.c
60
static void fpu_force_restore(struct fpu *fpu)
arch/x86/kernel/fpu/regset.c
66
WARN_ON_FPU(fpu == x86_task_fpu(current));
arch/x86/kernel/fpu/regset.c
68
__fpu_invalidate_fpregs_state(fpu);
arch/x86/kernel/fpu/regset.c
74
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/regset.c
79
sync_fpstate(fpu);
arch/x86/kernel/fpu/regset.c
82
return membuf_write(&to, &fpu->fpstate->regs.fxsave,
arch/x86/kernel/fpu/regset.c
83
sizeof(fpu->fpstate->regs.fxsave));
arch/x86/kernel/fpu/regset.c
94
struct fpu *fpu = x86_task_fpu(target);
arch/x86/kernel/fpu/signal.c
266
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/signal.c
270
xrestore &= fpu->fpstate->user_xfeatures;
arch/x86/kernel/fpu/signal.c
274
xfd_update_state(fpu->fpstate);
arch/x86/kernel/fpu/signal.c
276
ret = __restore_fpregs_from_user(buf, fpu->fpstate->user_xfeatures,
arch/x86/kernel/fpu/signal.c
300
if (!fault_in_readable(buf, fpu->fpstate->user_size))
arch/x86/kernel/fpu/signal.c
315
os_xrstor_supervisor(fpu->fpstate);
arch/x86/kernel/fpu/signal.c
326
struct fpu *fpu = x86_task_fpu(tsk);
arch/x86/kernel/fpu/signal.c
374
os_xsave(fpu->fpstate);
arch/x86/kernel/fpu/signal.c
377
__fpu_invalidate_fpregs_state(fpu);
arch/x86/kernel/fpu/signal.c
381
fpregs = &fpu->fpstate->regs;
arch/x86/kernel/fpu/signal.c
421
success = !os_xrstor_safe(fpu->fpstate,
arch/x86/kernel/fpu/signal.c
446
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/signal.c
453
fpu__clear_user_states(fpu);
arch/x86/kernel/fpu/signal.c
457
size = xstate_sigframe_size(fpu->fpstate);
arch/x86/kernel/fpu/signal.c
485
fpu__clear_user_states(fpu);
arch/x86/kernel/fpu/xstate.c
1560
void fpstate_free(struct fpu *fpu)
arch/x86/kernel/fpu/xstate.c
1562
if (fpu->fpstate && fpu->fpstate != &fpu->__fpstate)
arch/x86/kernel/fpu/xstate.c
1563
vfree(fpu->fpstate);
arch/x86/kernel/fpu/xstate.c
1584
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/fpu/xstate.c
1602
curfps = guest_fpu ? guest_fpu->fpstate : fpu->fpstate;
arch/x86/kernel/fpu/xstate.c
1605
in_use = fpu->fpstate == curfps;
arch/x86/kernel/fpu/xstate.c
1635
fpu->fpstate = newfps;
arch/x86/kernel/fpu/xstate.c
1637
fpu->fpstate = newfps;
arch/x86/kernel/fpu/xstate.c
1641
xfd_update_state(fpu->fpstate);
arch/x86/kernel/fpu/xstate.c
1677
struct fpu *fpu = x86_task_fpu(current->group_leader);
arch/x86/kernel/fpu/xstate.c
1708
perm = guest ? &fpu->guest_perm : &fpu->perm;
arch/x86/kernel/fpu/xstate.c
1767
struct fpu *fpu;
arch/x86/kernel/fpu/xstate.c
1784
fpu = x86_task_fpu(current->group_leader);
arch/x86/kernel/fpu/xstate.c
1785
perm = guest_fpu ? &fpu->guest_perm : &fpu->perm;
arch/x86/kernel/fpu/xstate.h
26
struct fpu *fpu = x86_task_fpu(current->group_leader);
arch/x86/kernel/fpu/xstate.h
30
perm = guest ? &fpu->guest_perm : &fpu->perm;
arch/x86/kernel/signal.c
258
struct fpu *fpu = x86_task_fpu(current);
arch/x86/kernel/signal.c
310
fpu__clear_user_states(fpu);
arch/x86/kernel/traps.c
1426
struct fpu *fpu = x86_task_fpu(task);
arch/x86/kernel/traps.c
1450
fpu_sync_fpstate(fpu);
arch/x86/kernel/traps.c
1455
si_code = fpu__exception_code(fpu, trapnr);
arch/x86/kvm/x86.c
12604
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/x86/kvm/x86.c
12614
memcpy(fpu->fpr, fxsave->st_space, 128);
arch/x86/kvm/x86.c
12615
fpu->fcw = fxsave->cwd;
arch/x86/kvm/x86.c
12616
fpu->fsw = fxsave->swd;
arch/x86/kvm/x86.c
12617
fpu->ftwx = fxsave->twd;
arch/x86/kvm/x86.c
12618
fpu->last_opcode = fxsave->fop;
arch/x86/kvm/x86.c
12619
fpu->last_ip = fxsave->rip;
arch/x86/kvm/x86.c
12620
fpu->last_dp = fxsave->rdp;
arch/x86/kvm/x86.c
12621
memcpy(fpu->xmm, fxsave->xmm_space, sizeof(fxsave->xmm_space));
arch/x86/kvm/x86.c
12627
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
arch/x86/kvm/x86.c
12638
memcpy(fxsave->st_space, fpu->fpr, 128);
arch/x86/kvm/x86.c
12639
fxsave->cwd = fpu->fcw;
arch/x86/kvm/x86.c
12640
fxsave->swd = fpu->fsw;
arch/x86/kvm/x86.c
12641
fxsave->twd = fpu->ftwx;
arch/x86/kvm/x86.c
12642
fxsave->fop = fpu->last_opcode;
arch/x86/kvm/x86.c
12643
fxsave->rip = fpu->last_ip;
arch/x86/kvm/x86.c
12644
fxsave->rdp = fpu->last_dp;
arch/x86/kvm/x86.c
12645
memcpy(fxsave->xmm_space, fpu->xmm, sizeof(fxsave->xmm_space));
fs/binfmt_elf.c
1794
elf_fpregset_t *fpu;
fs/binfmt_elf.c
1802
fpu = kzalloc_obj(elf_fpregset_t);
fs/binfmt_elf.c
1803
if (!fpu || !elf_core_copy_task_fpregs(p, fpu)) {
fs/binfmt_elf.c
1804
kfree(fpu);
fs/binfmt_elf.c
1809
fill_note(&t->notes[1], PRFPREG, sizeof(*fpu), fpu);
fs/binfmt_elf_fdpic.c
1384
elf_fpregset_t fpu; /* NT_PRFPREG */
fs/binfmt_elf_fdpic.c
1420
ret = regset_get(p, regset, sizeof(t->fpu), &t->fpu);
fs/binfmt_elf_fdpic.c
1427
fill_note(&t->notes[1], PRFPREG, sizeof(t->fpu), &t->fpu);
include/linux/elfcore.h
97
int elf_core_copy_task_fpregs(struct task_struct *t, elf_fpregset_t *fpu);
include/linux/kvm_host.h
1592
int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu);
include/linux/kvm_host.h
1593
int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu);
lib/zstd/common/cpu.h
130
D(fpu, 0)
tools/testing/selftests/kvm/include/kvm_util.h
805
static inline void vcpu_fpu_get(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
tools/testing/selftests/kvm/include/kvm_util.h
807
vcpu_ioctl(vcpu, KVM_GET_FPU, fpu);
tools/testing/selftests/kvm/include/kvm_util.h
809
static inline void vcpu_fpu_set(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu)
tools/testing/selftests/kvm/include/kvm_util.h
811
vcpu_ioctl(vcpu, KVM_SET_FPU, fpu);
tools/testing/selftests/kvm/s390/resets.c
133
struct kvm_fpu fpu;
tools/testing/selftests/kvm/s390/resets.c
162
vcpu_fpu_get(vcpu, &fpu);
tools/testing/selftests/kvm/s390/resets.c
163
TEST_ASSERT(!fpu.fpc, "fpc == 0");
tools/testing/selftests/kvm/s390/resets.c
90
struct kvm_fpu fpu;
tools/testing/selftests/kvm/s390/resets.c
98
vcpu_fpu_get(vcpu, &fpu);
tools/testing/selftests/kvm/s390/resets.c
99
TEST_ASSERT(!memcmp(&fpu.fprs, regs_null, sizeof(fpu.fprs)), "fprs == 0");
virt/kvm/kvm_main.c
4418
struct kvm_fpu *fpu = NULL;
virt/kvm/kvm_main.c
4611
fpu = kzalloc_obj(struct kvm_fpu);
virt/kvm/kvm_main.c
4613
if (!fpu)
virt/kvm/kvm_main.c
4615
r = kvm_arch_vcpu_ioctl_get_fpu(vcpu, fpu);
virt/kvm/kvm_main.c
4619
if (copy_to_user(argp, fpu, sizeof(struct kvm_fpu)))
virt/kvm/kvm_main.c
4625
fpu = memdup_user(argp, sizeof(*fpu));
virt/kvm/kvm_main.c
4626
if (IS_ERR(fpu)) {
virt/kvm/kvm_main.c
4627
r = PTR_ERR(fpu);
virt/kvm/kvm_main.c
4628
fpu = NULL;
virt/kvm/kvm_main.c
4631
r = kvm_arch_vcpu_ioctl_set_fpu(vcpu, fpu);
virt/kvm/kvm_main.c
4657
kfree(fpu);