Home
last modified time | relevance | path

Searched refs:fpu (Results 1 – 137 of 137) sorted by relevance

/linux-4.4.14/arch/x86/kernel/fpu/
Dcore.c37 DEFINE_PER_CPU(struct fpu *, fpu_fpregs_owner_ctx);
76 return !current->thread.fpu.fpregs_active && (read_cr0() & X86_CR0_TS); in interrupted_kernel_fpu_idle()
110 struct fpu *fpu = &current->thread.fpu; in __kernel_fpu_begin() local
116 if (fpu->fpregs_active) { in __kernel_fpu_begin()
117 copy_fpregs_to_fpstate(fpu); in __kernel_fpu_begin()
127 struct fpu *fpu = &current->thread.fpu; in __kernel_fpu_end() local
129 if (fpu->fpregs_active) in __kernel_fpu_end()
130 copy_kernel_to_fpregs(&fpu->state); in __kernel_fpu_end()
186 void fpu__save(struct fpu *fpu) in fpu__save() argument
188 WARN_ON_FPU(fpu != &current->thread.fpu); in fpu__save()
[all …]
Dregset.c15 struct fpu *target_fpu = &target->thread.fpu; in regset_fpregs_active()
22 struct fpu *target_fpu = &target->thread.fpu; in regset_xregset_fpregs_active()
31 struct fpu *fpu = &target->thread.fpu; in xfpregs_get() local
36 fpu__activate_fpstate_read(fpu); in xfpregs_get()
37 fpstate_sanitize_xstate(fpu); in xfpregs_get()
40 &fpu->state.fxsave, 0, -1); in xfpregs_get()
47 struct fpu *fpu = &target->thread.fpu; in xfpregs_set() local
53 fpu__activate_fpstate_write(fpu); in xfpregs_set()
54 fpstate_sanitize_xstate(fpu); in xfpregs_set()
57 &fpu->state.fxsave, 0, -1); in xfpregs_set()
[all …]
Dsignal.c57 struct xregs_state *xsave = &tsk->thread.fpu.state.xsave; in save_fsave_header()
155 struct xregs_state *xsave = &current->thread.fpu.state.xsave; in copy_fpstate_to_sigframe()
176 copy_fxregs_to_kernel(&tsk->thread.fpu); in copy_fpstate_to_sigframe()
178 fpstate_sanitize_xstate(&tsk->thread.fpu); in copy_fpstate_to_sigframe()
198 struct xregs_state *xsave = &tsk->thread.fpu.state.xsave; in sanitize_restored_xstate()
252 struct fpu *fpu = &tsk->thread.fpu; in __fpu__restore_sig() local
261 fpu__clear(fpu); in __fpu__restore_sig()
268 fpu__activate_curr(fpu); in __fpu__restore_sig()
297 struct fpu *fpu = &tsk->thread.fpu; in __fpu__restore_sig() local
309 fpu__drop(fpu); in __fpu__restore_sig()
[all …]
Dxstate.c110 void fpstate_sanitize_xstate(struct fpu *fpu) in fpstate_sanitize_xstate() argument
112 struct fxregs_state *fx = &fpu->state.fxsave; in fpstate_sanitize_xstate()
119 xfeatures = fpu->state.xsave.header.xfeatures; in fpstate_sanitize_xstate()
741 struct fpu *fpu = &current->thread.fpu; in get_xsave_field_ptr() local
743 if (!fpu->fpstate_active) in get_xsave_field_ptr()
749 fpu__save(fpu); in get_xsave_field_ptr()
751 return get_xsave_addr(&fpu->state.xsave, xsave_state); in get_xsave_field_ptr()
Dinit.c45 fpstate_init_soft(&current->thread.fpu.state.soft); in fpu__init_cpu_generic()
161 task_size -= sizeof(((struct task_struct *)0)->thread.fpu.state); in fpu__init_task_struct_size()
176 CHECK_MEMBER_AT_END_OF(struct fpu, state); in fpu__init_task_struct_size()
177 CHECK_MEMBER_AT_END_OF(struct thread_struct, fpu); in fpu__init_task_struct_size()
286 WARN_ON_FPU(current->thread.fpu.fpstate_active); in fpu__init_system_ctx_switch()
/linux-4.4.14/arch/x86/include/asm/fpu/
Dinternal.h24 extern void fpu__activate_curr(struct fpu *fpu);
25 extern void fpu__activate_fpstate_read(struct fpu *fpu);
26 extern void fpu__activate_fpstate_write(struct fpu *fpu);
27 extern void fpu__save(struct fpu *fpu);
28 extern void fpu__restore(struct fpu *fpu);
30 extern void fpu__drop(struct fpu *fpu);
31 extern int fpu__copy(struct fpu *dst_fpu, struct fpu *src_fpu);
32 extern void fpu__clear(struct fpu *fpu);
33 extern int fpu__exception_code(struct fpu *fpu, int trap_nr);
95 extern void fpstate_sanitize_xstate(struct fpu *fpu);
[all …]
Dtypes.h258 struct fpu { struct
/linux-4.4.14/arch/mips/kernel/
Dasm-offsets.c123 OFFSET(THREAD_FPU, task_struct, thread.fpu); in output_thread_defines()
137 OFFSET(THREAD_FPR0, task_struct, thread.fpu.fpr[0]); in output_thread_fpu_defines()
138 OFFSET(THREAD_FPR1, task_struct, thread.fpu.fpr[1]); in output_thread_fpu_defines()
139 OFFSET(THREAD_FPR2, task_struct, thread.fpu.fpr[2]); in output_thread_fpu_defines()
140 OFFSET(THREAD_FPR3, task_struct, thread.fpu.fpr[3]); in output_thread_fpu_defines()
141 OFFSET(THREAD_FPR4, task_struct, thread.fpu.fpr[4]); in output_thread_fpu_defines()
142 OFFSET(THREAD_FPR5, task_struct, thread.fpu.fpr[5]); in output_thread_fpu_defines()
143 OFFSET(THREAD_FPR6, task_struct, thread.fpu.fpr[6]); in output_thread_fpu_defines()
144 OFFSET(THREAD_FPR7, task_struct, thread.fpu.fpr[7]); in output_thread_fpu_defines()
145 OFFSET(THREAD_FPR8, task_struct, thread.fpu.fpr[8]); in output_thread_fpu_defines()
[all …]
Dptrace32.c128 tmp = child->thread.fpu.fcr31; in compat_arch_ptrace()
202 memset(&child->thread.fpu, ~0, in compat_arch_ptrace()
203 sizeof(child->thread.fpu)); in compat_arch_ptrace()
204 child->thread.fpu.fcr31 = 0; in compat_arch_ptrace()
229 child->thread.fpu.fcr31 = data; in compat_arch_ptrace()
Dptrace.c58 memset(&target->thread.fpu.fpr, ~0, sizeof(target->thread.fpu.fpr)); in init_fp_ctx()
92 fcr31 = child->thread.fpu.fcr31; in ptrace_setfcr31()
94 child->thread.fpu.fcr31 = (value & ~mask) | (fcr31 & mask); in ptrace_setfcr31()
167 __put_user(child->thread.fpu.fcr31, data + 64); in ptrace_getfpregs()
453 if (sizeof(target->thread.fpu.fpr[i]) == sizeof(elf_fpreg_t)) in fpr_get()
455 &target->thread.fpu, in fpr_get()
459 fpr_val = get_fpr64(&target->thread.fpu.fpr[i], 0); in fpr_get()
483 if (sizeof(target->thread.fpu.fpr[i]) == sizeof(elf_fpreg_t)) in fpr_set()
485 &target->thread.fpu, in fpr_set()
494 set_fpr64(&target->thread.fpu.fpr[i], 0, fpr_val); in fpr_set()
[all …]
Dkgdb.c146 memcpy((void *)&current->thread.fpu.fcr31, mem, in dbg_set_reg()
154 memcpy((void *)&current->thread.fpu.fpr[fp_reg], mem, in dbg_set_reg()
181 memcpy(mem, (void *)&current->thread.fpu.fcr31, in dbg_get_reg()
190 memcpy(mem, (void *)&current->thread.fpu.fpr[fp_reg], in dbg_get_reg()
Dsignal.c80 __put_user(get_fpr64(&current->thread.fpu.fpr[i], 0), in copy_fp_to_sigcontext()
83 err |= __put_user(current->thread.fpu.fcr31, csr); in copy_fp_to_sigcontext()
100 set_fpr64(&current->thread.fpu.fpr[i], 0, fpr_val); in copy_fp_from_sigcontext()
102 err |= __get_user(current->thread.fpu.fcr31, csr); in copy_fp_from_sigcontext()
177 err = __put_user(current->thread.fpu.msacsr, &msa->csr); in save_msa_extcontext()
180 val = get_fpr64(&current->thread.fpu.fpr[i], 1); in save_msa_extcontext()
226 current->thread.fpu.msacsr = csr; in restore_msa_extcontext()
230 set_fpr64(&current->thread.fpu.fpr[i], 1, val); in restore_msa_extcontext()
Dtraps.c796 sig = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 1, in simulate_fp()
798 fcr31 = current->thread.fpu.fcr31; in simulate_fp()
804 current->thread.fpu.fcr31 &= ~FPU_CSR_ALL_X; in simulate_fp()
850 sig = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 1, in do_fpe()
852 fcr31 = current->thread.fpu.fcr31; in do_fpe()
858 current->thread.fpu.fcr31 &= ~FPU_CSR_ALL_X; in do_fpe()
1295 write_msa_csr(current->thread.fpu.msacsr); in enable_restore_fp_context()
1332 current->thread.fpu.fcr31); in enable_restore_fp_context()
1429 sig = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 0, in do_cpu()
1431 fcr31 = current->thread.fpu.fcr31; in do_cpu()
[all …]
Dbranch.c152 fcr31 = current->thread.fpu.fcr31; in __mm_isBranchInstr()
695 if (get_fpr32(&current->thread.fpu.fpr[reg], 0) in __compute_return_epc_for_insn()
701 if (!(get_fpr32(&current->thread.fpu.fpr[reg], 0) in __compute_return_epc_for_insn()
721 fcr31 = current->thread.fpu.fcr31; in __compute_return_epc_for_insn()
Dmips-r2-to-r6-emul.c203 csr = current->thread.fpu.fcr31; in movf_func()
226 csr = current->thread.fpu.fcr31; in movt_func()
1172 err = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 0, in mipsr2_decoder()
1174 *fcr31 = current->thread.fpu.fcr31; in mipsr2_decoder()
1180 current->thread.fpu.fcr31 &= ~FPU_CSR_ALL_X; in mipsr2_decoder()
Dunaligned.c1198 res = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 1, in emulate_load_store_insn()
1222 fpr = &current->thread.fpu.fpr[wd]; in emulate_load_store_insn()
1711 res = fpu_emulator_cop1Handler(regs, &current->thread.fpu, 1, in emulate_load_store_microMIPS()
/linux-4.4.14/arch/sparc/kernel/
Dsigutil_64.c14 int save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in save_fpu_state() argument
22 err |= copy_to_user(&fpu->si_float_regs[0], fpregs, in save_fpu_state()
25 err |= copy_to_user(&fpu->si_float_regs[32], fpregs+16, in save_fpu_state()
27 err |= __put_user(current_thread_info()->xfsr[0], &fpu->si_fsr); in save_fpu_state()
28 err |= __put_user(current_thread_info()->gsr[0], &fpu->si_gsr); in save_fpu_state()
29 err |= __put_user(fprs, &fpu->si_fprs); in save_fpu_state()
34 int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in restore_fpu_state() argument
40 if (((unsigned long) fpu) & 7) in restore_fpu_state()
43 err = get_user(fprs, &fpu->si_fprs); in restore_fpu_state()
47 err |= copy_from_user(fpregs, &fpu->si_float_regs[0], in restore_fpu_state()
[all …]
Dsigutil_32.c14 int save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in save_fpu_state() argument
34 err |= __copy_to_user(&fpu->si_float_regs[0], in save_fpu_state()
37 err |= __put_user(current->thread.fsr, &fpu->si_fsr); in save_fpu_state()
38 err |= __put_user(current->thread.fpqdepth, &fpu->si_fpqdepth); in save_fpu_state()
40 err |= __copy_to_user(&fpu->si_fpqueue[0], in save_fpu_state()
48 int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in restore_fpu_state() argument
52 if (((unsigned long) fpu) & 3) in restore_fpu_state()
67 if (!access_ok(VERIFY_READ, fpu, sizeof(*fpu))) in restore_fpu_state()
70 err = __copy_from_user(&current->thread.float_regs[0], &fpu->si_float_regs[0], in restore_fpu_state()
72 err |= __get_user(current->thread.fsr, &fpu->si_fsr); in restore_fpu_state()
[all …]
Dsigutil.h4 int save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu);
5 int restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu);
Dcpu.c282 const struct fpu_info *fpu; in set_cpu_and_fpu() local
295 fpu = &manuf->fpu_info[0]; in set_cpu_and_fpu()
296 while (fpu->fp_vers != -1) in set_cpu_and_fpu()
298 if (fpu->fp_vers == fpu_vers) { in set_cpu_and_fpu()
299 sparc_fpu_type = fpu->name; in set_cpu_and_fpu()
302 fpu++; in set_cpu_and_fpu()
Dentry.S1085 st %fsr, [%o1] ! this can trap on us if fpu is in bogon state
/linux-4.4.14/arch/s390/include/asm/fpu/
Dinternal.h48 static inline void fpregs_store(_s390_fp_regs *fpregs, struct fpu *fpu) in fpregs_store() argument
51 fpregs->fpc = fpu->fpc; in fpregs_store()
53 convert_vx_to_fp((freg_t *)&fpregs->fprs, fpu->vxrs); in fpregs_store()
55 memcpy((freg_t *)&fpregs->fprs, fpu->fprs, in fpregs_store()
59 static inline void fpregs_load(_s390_fp_regs *fpregs, struct fpu *fpu) in fpregs_load() argument
61 fpu->fpc = fpregs->fpc; in fpregs_load()
63 convert_fp_to_vx(fpu->vxrs, (freg_t *)&fpregs->fprs); in fpregs_load()
65 memcpy(fpu->fprs, (freg_t *)&fpregs->fprs, in fpregs_load()
Dtypes.h13 struct fpu { struct
/linux-4.4.14/arch/m68k/kernel/
Dprocess.c207 int dump_fpu (struct pt_regs *regs, struct user_m68kfp_struct *fpu) in dump_fpu() argument
214 memcpy(fpu->fpcntl, current->thread.fpcntl, 12); in dump_fpu()
215 memcpy(fpu->fpregs, current->thread.fp, 96); in dump_fpu()
220 fpu->fpregs[i] = ((fpu->fpregs[i] & 0xffff0000) << 15) | in dump_fpu()
221 ((fpu->fpregs[i] & 0x0000ffff) << 16); in dump_fpu()
236 : "m" (fpu->fpcntl[0]), in dump_fpu()
237 "m" (fpu->fpcntl[1]), in dump_fpu()
238 "m" (fpu->fpcntl[2]), in dump_fpu()
239 "m" (fpu->fpregs[0]) in dump_fpu()
244 : "m" (fpu->fpcntl[0]) in dump_fpu()
[all …]
Dsetup_mm.c407 const char *cpu, *mmu, *fpu; in show_cpuinfo() local
437 fpu = "none(soft float)"; in show_cpuinfo()
440 fpu = "68881"; in show_cpuinfo()
442 fpu = "68882"; in show_cpuinfo()
444 fpu = "68040"; in show_cpuinfo()
446 fpu = "68060"; in show_cpuinfo()
448 fpu = "Sun FPA"; in show_cpuinfo()
450 fpu = "ColdFire"; in show_cpuinfo()
452 fpu = "none"; in show_cpuinfo()
480 cpu, mmu, fpu, in show_cpuinfo()
Dsetup_no.c274 char *cpu, *mmu, *fpu; in show_cpuinfo() local
279 fpu = "none"; in show_cpuinfo()
288 cpu, mmu, fpu, in show_cpuinfo()
/linux-4.4.14/arch/mn10300/kernel/
DMakefile6 fpu-obj-y := fpu-nofpu.o fpu-nofpu-low.o
7 fpu-obj-$(CONFIG_FPU) := fpu.o fpu-low.o
11 switch_to.o mn10300_ksyms.o $(fpu-obj-y) \
Dfpu-low.S159 # - save the fpu state
/linux-4.4.14/arch/s390/kernel/
Dprocess.c89 kfree(tsk->thread.fpu.regs); in arch_release_task_struct()
104 dst->thread.fpu.regs = kzalloc(fpu_regs_size, GFP_KERNEL|__GFP_REPEAT); in arch_dup_task_struct()
105 if (!dst->thread.fpu.regs) in arch_dup_task_struct()
114 dst->thread.fpu.fpc = current->thread.fpu.fpc; in arch_dup_task_struct()
115 memcpy(dst->thread.fpu.regs, current->thread.fpu.regs, fpu_regs_size); in arch_dup_task_struct()
191 current->thread.fpu.fpc = 0; in execve_tail()
201 fpregs->fpc = current->thread.fpu.fpc; in dump_fpu()
205 current->thread.fpu.vxrs); in dump_fpu()
207 memcpy(&fpregs->fprs, current->thread.fpu.fprs, in dump_fpu()
Dptrace.c233 tmp = child->thread.fpu.fpc; in __peek_user()
244 ((addr_t) child->thread.fpu.vxrs + 2*offset); in __peek_user()
247 ((addr_t) child->thread.fpu.fprs + offset); in __peek_user()
378 child->thread.fpu.fpc = data >> (BITS_PER_LONG - 32); in __poke_user()
388 child->thread.fpu.vxrs + 2*offset) = data; in __poke_user()
391 child->thread.fpu.fprs + offset) = data; in __poke_user()
612 tmp = child->thread.fpu.fpc; in __peek_user_compat()
622 ((addr_t) child->thread.fpu.vxrs + 2*offset); in __peek_user_compat()
625 ((addr_t) child->thread.fpu.fprs + offset); in __peek_user_compat()
737 child->thread.fpu.fpc = data; in __poke_user_compat()
[all …]
Dsignal.c130 fpregs_store(&user_sregs.fpregs, &current->thread.fpu); in save_sigregs()
168 fpregs_load(&user_sregs.fpregs, &current->thread.fpu); in restore_sigregs()
184 vxrs[i] = *((__u64 *)(current->thread.fpu.vxrs + i) + 1); in save_sigregs_ext()
188 current->thread.fpu.vxrs + __NUM_VXRS_LOW, in save_sigregs_ext()
205 __copy_from_user(current->thread.fpu.vxrs + __NUM_VXRS_LOW, in restore_sigregs_ext()
210 *((__u64 *)(current->thread.fpu.vxrs + i) + 1) = vxrs[i]; in restore_sigregs_ext()
Dtraps.c238 vic = (current->thread.fpu.fpc & 0xf00) >> 8; in vector_exception()
269 if (current->thread.fpu.fpc & FPC_DXC_MASK) in data_exception()
274 do_fp_trap(regs, current->thread.fpu.fpc); in data_exception()
Dcompat_signal.c193 fpregs_store((_s390_fp_regs *) &user_sregs.fpregs, &current->thread.fpu); in save_sigregs32()
231 fpregs_load((_s390_fp_regs *) &user_sregs.fpregs, &current->thread.fpu); in restore_sigregs32()
254 vxrs[i] = *((__u64 *)(current->thread.fpu.vxrs + i) + 1); in save_sigregs_ext32()
258 current->thread.fpu.vxrs + __NUM_VXRS_LOW, in save_sigregs_ext32()
283 __copy_from_user(current->thread.fpu.vxrs + __NUM_VXRS_LOW, in restore_sigregs_ext32()
288 *((__u64 *)(current->thread.fpu.vxrs + i) + 1) = vxrs[i]; in restore_sigregs_ext32()
Dasm-offsets.c33 OFFSET(__THREAD_FPU_fpc, thread_struct, fpu.fpc); in main()
34 OFFSET(__THREAD_FPU_regs, thread_struct, fpu.regs); in main()
/linux-4.4.14/arch/m68k/math-emu/
Dfp_movem.S74 printf PDECODE,"->" | fpu -> cpu
76 1: printf PDECODE,"<-" | fpu <- cpu
132 swap %d1 | get fpu register list
141 | move register from memory into fpu
161 | move register from fpu into memory
218 printf PDECODE,"->" | fpu -> cpu
220 1: printf PDECODE,"<-" | fpu <- cpu
319 swap %d1 | get fpu register list
325 | move register from memory into fpu
336 | move register from fpu into memory
Dfp_scan.S64 | normal fpu instruction? (this excludes fsave/frestore)
92 fp_fgen_fp: | source is a fpu register
/linux-4.4.14/include/linux/
Delfcore.h42 …ine int elf_core_copy_task_fpregs(struct task_struct *t, struct pt_regs *regs, elf_fpregset_t *fpu) in elf_core_copy_task_fpregs() argument
45 return ELF_CORE_COPY_FPREGS(t, fpu); in elf_core_copy_task_fpregs()
47 return dump_fpu(regs, fpu); in elf_core_copy_task_fpregs()
Dkvm_host.h702 int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu);
703 int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu);
/linux-4.4.14/arch/mips/kvm/
Dmips.c536 struct mips_fpu_struct *fpu = &vcpu->arch.fpu; in kvm_mips_get_reg() local
564 v = get_fpr32(&fpu->fpr[idx], 0); in kvm_mips_get_reg()
566 v = get_fpr32(&fpu->fpr[idx & ~1], idx & 1); in kvm_mips_get_reg()
575 v = get_fpr64(&fpu->fpr[idx], 0); in kvm_mips_get_reg()
585 v = fpu->fcr31; in kvm_mips_get_reg()
598 vs[0] = get_fpr64(&fpu->fpr[idx], 0); in kvm_mips_get_reg()
599 vs[1] = get_fpr64(&fpu->fpr[idx], 1); in kvm_mips_get_reg()
602 vs[0] = get_fpr64(&fpu->fpr[idx], 1); in kvm_mips_get_reg()
603 vs[1] = get_fpr64(&fpu->fpr[idx], 0); in kvm_mips_get_reg()
614 v = fpu->msacsr; in kvm_mips_get_reg()
[all …]
DMakefile12 dyntrans.o trap_emul.o fpu.o
/linux-4.4.14/arch/x86/kernel/
Dprocess.c91 return fpu__copy(&dst->thread.fpu, &src->thread.fpu); in arch_dup_task_struct()
102 struct fpu *fpu = &t->fpu; in exit_thread() local
120 fpu__drop(fpu); in exit_thread()
130 fpu__clear(&tsk->thread.fpu); in flush_thread()
Dsignal.c210 struct fpu *fpu = &current->thread.fpu; in get_sigframe() local
230 if (fpu->fpstate_active) { in get_sigframe()
246 if (fpu->fpstate_active && in get_sigframe()
635 struct fpu *fpu = &current->thread.fpu; in handle_signal() local
687 if (fpu->fpstate_active) in handle_signal()
688 fpu__clear(fpu); in handle_signal()
Dprocess_32.c246 struct fpu *prev_fpu = &prev->fpu; in __switch_to()
247 struct fpu *next_fpu = &next->fpu; in __switch_to()
Dtraps.c692 struct fpu *fpu = &task->thread.fpu; in math_error() local
713 fpu__save(fpu); in math_error()
721 info.si_code = fpu__exception_code(fpu, trapnr); in math_error()
766 fpu__restore(&current->thread.fpu); /* interrupts still off */ in do_device_not_available()
Dprocess_64.c279 struct fpu *prev_fpu = &prev->fpu; in __switch_to()
280 struct fpu *next_fpu = &next->fpu; in __switch_to()
DMakefile46 obj-y += fpu/
/linux-4.4.14/arch/sh/math-emu/
Dmath.c477 static void denormal_to_double(struct sh_fpu_soft_struct *fpu, int n) in denormal_to_double() argument
480 unsigned long x = fpu->fpul; in denormal_to_double()
493 fpu->fp_regs[n] = du; in denormal_to_double()
494 fpu->fp_regs[n+1] = dl; in denormal_to_double()
581 static void fpu_init(struct sh_fpu_soft_struct *fpu) in fpu_init() argument
585 fpu->fpscr = FPSCR_INIT; in fpu_init()
586 fpu->fpul = 0; in fpu_init()
589 fpu->fp_regs[i] = 0; in fpu_init()
590 fpu->xfp_regs[i]= 0; in fpu_init()
602 struct sh_fpu_soft_struct *fpu = &(tsk->thread.xstate->softfpu); in do_fpu_inst() local
[all …]
/linux-4.4.14/arch/arc/kernel/
Dfpu.c35 unsigned int *saveto = &prev->thread.fpu.aux_dpfp[0].l; in fpu_save_restore()
36 unsigned int *readfrom = &next->thread.fpu.aux_dpfp[0].l; in fpu_save_restore()
DMakefile26 obj-$(CONFIG_ARC_FPU_SAVE_RESTORE) += fpu.o
Dprocess.c193 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
/linux-4.4.14/arch/m32r/kernel/
Dptrace.c113 else if (off >= (long)(&dummy->fpu >> 2) && in ptrace_read_user()
116 if (off == (long)(&dummy->fpu.fpscr >> 2)) in ptrace_read_user()
121 tmp = ((long *)(&tsk->thread.fpu >> 2)) in ptrace_read_user()
122 [off - (long)&dummy->fpu]; in ptrace_read_user()
169 else if (off >= (long)(&dummy->fpu >> 2) && in ptrace_write_user()
172 ((long *)&tsk->thread.fpu) in ptrace_write_user()
173 [off - (long)&dummy->fpu] = data; in ptrace_write_user()
Dprocess.c126 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
/linux-4.4.14/arch/mips/include/asm/
Dfpu.h172 tsk->thread.fpu.fcr31 = in lose_fpu_inatomic()
196 unsigned int fcr31 = current->thread.fpu.fcr31; in init_fpu()
253 return tsk->thread.fpu.fpr; in get_fpu_regs()
Dprocessor.h254 struct mips_fpu_struct fpu FPU_ALIGN;
313 .fpu = { \
Dfpu_emulator.h92 set_fpr64(&t->thread.fpu.fpr[i], 0, SIGNALLING_NAN); in fpu_emulator_init_fpu()
Delf.h308 current->thread.fpu.fcr31 = boot_cpu_data.fpu_csr31; \
370 current->thread.fpu.fcr31 = boot_cpu_data.fpu_csr31; \
Dkvm_host.h392 struct mips_fpu_struct fpu; member
/linux-4.4.14/arch/s390/include/asm/
Dprocessor.h96 struct fpu fpu; /* FP and VX register save area */ member
149 .fpu.regs = (void *)&init_task_fpu_regs, \
Dkvm_host.h508 struct fpu host_fpregs;
/linux-4.4.14/arch/x86/um/asm/
Delf.h205 extern int elf_core_copy_fpregs(struct task_struct *t, elf_fpregset_t *fpu);
207 #define ELF_CORE_COPY_FPREGS(t, fpu) elf_core_copy_fpregs(t, fpu) argument
/linux-4.4.14/arch/s390/kvm/
Dkvm-s390.c1275 vcpu->arch.host_fpregs.fpc = current->thread.fpu.fpc; in kvm_arch_vcpu_load()
1276 vcpu->arch.host_fpregs.regs = current->thread.fpu.regs; in kvm_arch_vcpu_load()
1281 current->thread.fpu.regs = vcpu->run->s.regs.vrs; in kvm_arch_vcpu_load()
1282 current->thread.fpu.fpc = vcpu->run->s.regs.fpc; in kvm_arch_vcpu_load()
1283 if (test_fp_ctl(current->thread.fpu.fpc)) in kvm_arch_vcpu_load()
1285 current->thread.fpu.fpc = 0; in kvm_arch_vcpu_load()
1300 vcpu->run->s.regs.fpc = current->thread.fpu.fpc; in kvm_arch_vcpu_put()
1303 current->thread.fpu.fpc = vcpu->arch.host_fpregs.fpc; in kvm_arch_vcpu_put()
1304 current->thread.fpu.regs = vcpu->arch.host_fpregs.regs; in kvm_arch_vcpu_put()
1324 current->thread.fpu.fpc = 0; in kvm_s390_vcpu_initial_reset()
[all …]
/linux-4.4.14/arch/sparc/
DMakefile27 KBUILD_CFLAGS += -m32 -mcpu=v8 -pipe -mno-fpu -fcall-used-g5 -fcall-used-g7
40 KBUILD_CFLAGS += -m64 -pipe -mno-fpu -mcpu=ultrasparc -mcmodel=medlow
/linux-4.4.14/arch/c6x/kernel/
Dsetup.c79 const char *fpu; member
122 p->fpu = "none"; in get_cpuinfo()
128 p->fpu = "yes"; in get_cpuinfo()
470 p->core_id, p->mmu, p->fpu, in show_cpuinfo()
/linux-4.4.14/arch/x86/math-emu/
Dfpu_entry.c115 struct fpu *fpu = &current->thread.fpu; in math_emulate() local
117 fpu__activate_curr(fpu); in math_emulate()
646 struct swregs_state *s387 = &target->thread.fpu.state.soft; in fpregs_soft_set()
698 struct swregs_state *s387 = &target->thread.fpu.state.soft; in fpregs_soft_get()
Dfpu_system.h49 #define I387 (&current->thread.fpu.state)
Dfpu_aux.c55 fpstate_init_soft(&current->thread.fpu.state.soft); in finit()
/linux-4.4.14/arch/sh/kernel/
Dptrace_32.c388 else if (addr >= offsetof(struct user, fpu) && in arch_ptrace()
391 if (addr == offsetof(struct user, fpu.fpscr)) in arch_ptrace()
400 index = addr - offsetof(struct user, fpu); in arch_ptrace()
428 else if (addr >= offsetof(struct user, fpu) && in arch_ptrace()
434 index = addr - offsetof(struct user, fpu); in arch_ptrace()
Dptrace_64.c403 else if ((addr >= offsetof(struct user, fpu)) && in arch_ptrace()
409 index = addr - offsetof(struct user, fpu); in arch_ptrace()
445 else if ((addr >= offsetof(struct user, fpu)) && in arch_ptrace()
451 index = addr - offsetof(struct user, fpu); in arch_ptrace()
Dprocess_32.c105 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
116 fpu, NULL); in dump_fpu()
Dprocess_64.c345 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
361 memcpy(fpu, &tsk->thread.xstate->hardfpu, sizeof(*fpu)); in dump_fpu()
/linux-4.4.14/arch/sh/kernel/cpu/sh4/
Dfpu.c150 static void denormal_to_double(struct sh_fpu_hard_struct *fpu, int n) in denormal_to_double() argument
153 unsigned long x = fpu->fpul; in denormal_to_double()
166 fpu->fp_regs[n] = du; in denormal_to_double()
167 fpu->fp_regs[n + 1] = dl; in denormal_to_double()
DMakefile9 obj-$(CONFIG_SH_FPU) += fpu.o softfloat.o
/linux-4.4.14/arch/cris/kernel/
Dprocess.c76 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
/linux-4.4.14/arch/sh/kernel/cpu/sh5/
DMakefile6 obj-$(CONFIG_SH_FPU) += fpu.o
/linux-4.4.14/arch/sh/kernel/cpu/sh2a/
Dfpu.c380 denormal_to_double (struct sh_fpu_hard_struct *fpu, int n) in denormal_to_double() argument
383 unsigned long x = fpu->fpul; in denormal_to_double()
396 fpu->fp_regs[n] = du; in denormal_to_double()
397 fpu->fp_regs[n+1] = dl; in denormal_to_double()
DMakefile9 obj-$(CONFIG_SH_FPU) += fpu.o
/linux-4.4.14/arch/x86/ia32/
Dia32_signal.c218 struct fpu *fpu = &current->thread.fpu; in get_sigframe() local
233 if (fpu->fpstate_active) { in get_sigframe()
/linux-4.4.14/arch/m68k/ifpsp060/
DMISC35 hdr.fpu : 2.4
105 hdr.fpu : 2.4
150 hdr.fpu : 2.4
Dfpsp.doc234 (unimplemented (fpu disabled) (possible F-line illegal)
243 | | fpu disabled? exit through
Dfskeleton.S233 move.l %d0,-(%sp) | enabled the fpu
/linux-4.4.14/arch/powerpc/kvm/
DMakefile50 fpu.o \
104 fpu.o \
Dbook3s.c523 int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_get_fpu() argument
528 int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_set_fpu() argument
Dbooke.c1752 int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_get_fpu() argument
1757 int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_set_fpu() argument
/linux-4.4.14/arch/sh/kernel/cpu/
DMakefile21 obj-y += irq/ init.o clock.o fpu.o pfc.o proc.o
Dinit.c55 onchip_setup(fpu);
/linux-4.4.14/arch/nios2/
DMakefile29 KBUILD_CFLAGS += $(if $(CONFIG_NIOS2_FPU_SUPPORT),-mcustom-fpu-cfg=60-1,)
/linux-4.4.14/arch/sh/include/asm/
Duser.h46 struct user_fpu_struct fpu; /* Math Co-processor registers */ member
/linux-4.4.14/arch/mips/loongson64/loongson-3/
Dcop2-ex.c46 _init_fpu(current->thread.fpu.fcr31); in loongson_cu2_call()
/linux-4.4.14/fs/
Dbinfmt_elf_fdpic.c1450 elf_fpregset_t fpu; /* NT_PRFPREG */ member
1479 t->prstatus.pr_fpvalid = elf_core_copy_task_fpregs(p, NULL, &t->fpu); in elf_dump_thread_status()
1481 fill_note(&t->notes[1], "CORE", NT_PRFPREG, sizeof(t->fpu), in elf_dump_thread_status()
1482 &t->fpu); in elf_dump_thread_status()
1586 elf_fpregset_t *fpu = NULL; in elf_fdpic_core_dump() local
1624 fpu = kmalloc(sizeof(*fpu), GFP_KERNEL); in elf_fdpic_core_dump()
1625 if (!fpu) in elf_fdpic_core_dump()
1693 elf_core_copy_task_fpregs(current, cprm->regs, fpu))) in elf_fdpic_core_dump()
1695 "CORE", NT_PRFPREG, sizeof(*fpu), fpu); in elf_fdpic_core_dump()
1825 kfree(fpu); in elf_fdpic_core_dump()
Dbinfmt_elf.c1856 elf_fpregset_t fpu; /* NT_PRFPREG */ member
1885 &t->fpu))) { in elf_dump_thread_status()
1886 fill_note(&t->notes[1], "CORE", NT_PRFPREG, sizeof(t->fpu), in elf_dump_thread_status()
1887 &(t->fpu)); in elf_dump_thread_status()
1909 elf_fpregset_t *fpu; member
1933 info->fpu = kmalloc(sizeof(*info->fpu), GFP_KERNEL); in elf_note_info_init()
1934 if (!info->fpu) in elf_note_info_init()
2002 info->fpu); in fill_note_info()
2005 "CORE", NT_PRFPREG, sizeof(*info->fpu), info->fpu); in fill_note_info()
2067 kfree(info->fpu); in free_note_info()
/linux-4.4.14/arch/arm/kvm/
Dguest.c278 int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_get_fpu() argument
283 int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_set_fpu() argument
/linux-4.4.14/arch/unicore32/kernel/
DMakefile12 obj-$(CONFIG_UNICORE_FPU_F64) += fpu-ucf64.o
Dentry.S415 cff r1, s31 @ get fpu FPSCR
/linux-4.4.14/arch/mips/dec/
Dint-handler.S143 bnez t2,fpu # handle FPU immediately
269 fpu: label
/linux-4.4.14/arch/arc/include/asm/
Dprocessor.h39 struct arc_fpu fpu; member
/linux-4.4.14/arch/arm64/kvm/
Dguest.c322 int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_get_fpu() argument
327 int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_set_fpu() argument
/linux-4.4.14/arch/um/kernel/
Dprocess.c401 int elf_core_copy_fpregs(struct task_struct *t, elf_fpregset_t *fpu) in elf_core_copy_fpregs() argument
405 return save_fp_registers(userspace_pid[cpu], (unsigned long *) fpu); in elf_core_copy_fpregs()
/linux-4.4.14/arch/tile/include/asm/
Delf.h101 #define ELF_CORE_COPY_FPREGS(t, fpu) 0 argument
/linux-4.4.14/arch/hexagon/kernel/
Dprocess.c184 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
/linux-4.4.14/arch/alpha/include/uapi/asm/
DKbuild12 header-y += fpu.h
/linux-4.4.14/arch/openrisc/kernel/
Dprocess.c208 int dump_fpu(struct pt_regs *regs, elf_fpregset_t * fpu) in dump_fpu() argument
/linux-4.4.14/arch/ia64/include/uapi/asm/
DKbuild13 header-y += fpu.h
/linux-4.4.14/arch/arm/crypto/
Dghash-ce-core.S36 .fpu crypto-neon-fp-armv8
Dsha2-ce-core.S16 .fpu crypto-neon-fp-armv8
DMakefile18 ifeq ($(call as-instr,.fpu crypto-neon-fp-armv8,y,n),y)
Dsha1-ce-core.S16 .fpu crypto-neon-fp-armv8
Daes-ce-core.S15 .fpu crypto-neon-fp-armv8
Dsha1-armv7-neon.S16 .fpu neon
Dsha512-core.S_shipped528 .fpu neon
Daesbs-core.S_shipped71 .fpu neon
Dsha256-core.S_shipped1870 .fpu neon
/linux-4.4.14/virt/kvm/
Dkvm_main.c2342 struct kvm_fpu *fpu = NULL; in kvm_vcpu_ioctl() local
2506 fpu = kzalloc(sizeof(struct kvm_fpu), GFP_KERNEL); in kvm_vcpu_ioctl()
2508 if (!fpu) in kvm_vcpu_ioctl()
2510 r = kvm_arch_vcpu_ioctl_get_fpu(vcpu, fpu); in kvm_vcpu_ioctl()
2514 if (copy_to_user(argp, fpu, sizeof(struct kvm_fpu))) in kvm_vcpu_ioctl()
2520 fpu = memdup_user(argp, sizeof(*fpu)); in kvm_vcpu_ioctl()
2521 if (IS_ERR(fpu)) { in kvm_vcpu_ioctl()
2522 r = PTR_ERR(fpu); in kvm_vcpu_ioctl()
2523 fpu = NULL; in kvm_vcpu_ioctl()
2526 r = kvm_arch_vcpu_ioctl_set_fpu(vcpu, fpu); in kvm_vcpu_ioctl()
[all …]
/linux-4.4.14/arch/x86/include/asm/
Dprocessor.h414 struct fpu fpu; member
Dkvm_host.h441 struct fpu guest_fpu;
/linux-4.4.14/arch/m68k/fpsp040/
Dx_operr.S305 | frame on the stack and the fpu in the original exceptional state
346 | any state back to the fpu.
Dres_func.S632 | use fpu to perform dest+new_src (user's rmode and X)
642 | use fpu to perform dest+new_src (user's rmode and X)
695 beq fix_stk |restore to fpu
799 beq fix_stk |restore to fpu
824 | Check the signs of the operands. If they are unlike, the fpu
974 beq fix_stk |restore to fpu
999 | Check the signs of the operands. If they are alike, the fpu
1155 beq fix_stk |restore to fpu
Dbugfix.S263 | fpu.
386 | fpu.
Dkernel_ex.S5 | fpu for exceptional cases detected or reported within the
Dx_unfl.S152 | fpu is in WBTEMP; else it is in FPTEMP.
Dscale.S189 | to the fpu.
/linux-4.4.14/arch/x86/kvm/
Dx86.c6793 struct fpu *fpu = &current->thread.fpu; in kvm_arch_vcpu_ioctl_run() local
6797 fpu__activate_curr(fpu); in kvm_arch_vcpu_ioctl_run()
7165 int kvm_arch_vcpu_ioctl_get_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) in kvm_arch_vcpu_ioctl_get_fpu() argument
7170 memcpy(fpu->fpr, fxsave->st_space, 128); in kvm_arch_vcpu_ioctl_get_fpu()
7171 fpu->fcw = fxsave->cwd; in kvm_arch_vcpu_ioctl_get_fpu()
7172 fpu->fsw = fxsave->swd; in kvm_arch_vcpu_ioctl_get_fpu()
7173 fpu->ftwx = fxsave->twd; in kvm_arch_vcpu_ioctl_get_fpu()
7174 fpu->last_opcode = fxsave->fop; in kvm_arch_vcpu_ioctl_get_fpu()
7175 fpu->last_ip = fxsave->rip; in kvm_arch_vcpu_ioctl_get_fpu()
7176 fpu->last_dp = fxsave->rdp; in kvm_arch_vcpu_ioctl_get_fpu()
[all …]
/linux-4.4.14/arch/mips/math-emu/
Dieee754.h164 #define ieee754_csr (*(struct _ieee754_csr *)(&current->thread.fpu.fcr31))
Dcp1emu.c712 if (get_fpr32(&current->thread.fpu.fpr[insn.i_format.rt], 0) & 0x1) in isBranchInstr()
716 if (!(get_fpr32(&current->thread.fpu.fpr[insn.i_format.rt], 0) & 0x1)) in isBranchInstr()
739 fcr31 = current->thread.fpu.fcr31; in isBranchInstr()
1194 if (get_fpr32(&current->thread.fpu.fpr[MIPSInst_RT(ir)], 0) & 0x1) in cop1Emulate()
1198 if (!(get_fpr32(&current->thread.fpu.fpr[MIPSInst_RT(ir)], 0) & 0x1)) in cop1Emulate()
/linux-4.4.14/arch/avr32/kernel/
Dprocess.c272 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
/linux-4.4.14/arch/x86/crypto/
DMakefile87 aesni-intel-y := aesni-intel_asm.o aesni-intel_glue.o fpu.o
/linux-4.4.14/arch/nios2/platform/
DKconfig.platform80 Enables the -mcustom-fpu-cfg=60-1 compiler flag.
/linux-4.4.14/arch/powerpc/kernel/
DMakefile146 extra-$(CONFIG_PPC_FPU) += fpu.o
/linux-4.4.14/arch/metag/kernel/
Dprocess.c361 int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) in dump_fpu() argument
/linux-4.4.14/arch/microblaze/boot/dts/
Dsystem.dts89 xlnx,fpu-exception = <0x1>;
124 xlnx,use-fpu = <0x2>;
/linux-4.4.14/drivers/lguest/x86/
Dcore.c305 fpu__restore(&current->thread.fpu); in lguest_arch_run_guest()
/linux-4.4.14/Documentation/x86/i386/
DIO-APIC.txt24 13: 1 XT-PIC fpu
/linux-4.4.14/arch/blackfin/kernel/
Dsetup.c1272 char *cpu, *mmu, *fpu, *vendor, *cache; local
1281 fpu = "none";
/linux-4.4.14/arch/powerpc/
DMakefile222 head-$(CONFIG_PPC_FPU) += arch/powerpc/kernel/fpu.o
/linux-4.4.14/Documentation/cris/
DREADME152 fpu : no
/linux-4.4.14/arch/m68k/
DKconfig.cpu311 The fpu uses normally a few bit more during calculations for
/linux-4.4.14/Documentation/filesystems/
Dproc.txt632 13: 1 XT-PIC fpu
650 13: 0 0 XT-PIC fpu
/linux-4.4.14/Documentation/
Dkernel-parameters.txt965 on enable eager fpu restore
966 off disable eager fpu restore