Home
last modified time | relevance | path

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

123

/arch/sh/kernel/cpu/sh4/
Dfpu.c90 :"0"((char *)(&tsk->thread.fpu.hard.status)), in save_fpu()
141 :"0"(&tsk->thread.fpu), "r"(FPSCR_RCHG) in restore_fpu()
204 static void denormal_to_double(struct sh_fpu_hard_struct *fpu, int n) in denormal_to_double() argument
207 unsigned long x = fpu->fpul; in denormal_to_double()
220 fpu->fp_regs[n] = du; in denormal_to_double()
221 fpu->fp_regs[n + 1] = dl; in denormal_to_double()
289 if ((tsk->thread.fpu.hard.fpscr & FPSCR_CAUSE_ERROR)) in ieee_fpe_handler()
291 denormal_to_double(&tsk->thread.fpu.hard, in ieee_fpe_handler()
307 hx = tsk->thread.fpu.hard.fp_regs[n]; in ieee_fpe_handler()
308 hy = tsk->thread.fpu.hard.fp_regs[m]; in ieee_fpe_handler()
[all …]
/arch/mips/math-emu/
Dkernel_linkage.c42 current->thread.fpu.fcr31 = 0; in fpu_emulator_init_fpu()
44 current->thread.fpu.fpr[i] = SIGNALLING_NAN; in fpu_emulator_init_fpu()
62 __put_user(current->thread.fpu.fpr[i], &sc->sc_fpregs[i]); in fpu_emulator_save_context()
64 err |= __put_user(current->thread.fpu.fcr31, &sc->sc_fpc_csr); in fpu_emulator_save_context()
76 __get_user(current->thread.fpu.fpr[i], &sc->sc_fpregs[i]); in fpu_emulator_restore_context()
78 err |= __get_user(current->thread.fpu.fcr31, &sc->sc_fpc_csr); in fpu_emulator_restore_context()
95 __put_user(current->thread.fpu.fpr[i], &sc->sc_fpregs[i]); in fpu_emulator_save_context32()
97 err |= __put_user(current->thread.fpu.fcr31, &sc->sc_fpc_csr); in fpu_emulator_save_context32()
109 __get_user(current->thread.fpu.fpr[i], &sc->sc_fpregs[i]); in fpu_emulator_restore_context32()
111 err |= __get_user(current->thread.fpu.fcr31, &sc->sc_fpc_csr); in fpu_emulator_restore_context32()
/arch/mips/kernel/
Dasm-offsets.c120 OFFSET(THREAD_FPU, task_struct, thread.fpu); in output_thread_defines()
138 OFFSET(THREAD_FPR0, task_struct, thread.fpu.fpr[0]); in output_thread_fpu_defines()
139 OFFSET(THREAD_FPR1, task_struct, thread.fpu.fpr[1]); in output_thread_fpu_defines()
140 OFFSET(THREAD_FPR2, task_struct, thread.fpu.fpr[2]); in output_thread_fpu_defines()
141 OFFSET(THREAD_FPR3, task_struct, thread.fpu.fpr[3]); in output_thread_fpu_defines()
142 OFFSET(THREAD_FPR4, task_struct, thread.fpu.fpr[4]); in output_thread_fpu_defines()
143 OFFSET(THREAD_FPR5, task_struct, thread.fpu.fpr[5]); in output_thread_fpu_defines()
144 OFFSET(THREAD_FPR6, task_struct, thread.fpu.fpr[6]); in output_thread_fpu_defines()
145 OFFSET(THREAD_FPR7, task_struct, thread.fpu.fpr[7]); in output_thread_fpu_defines()
146 OFFSET(THREAD_FPR8, task_struct, thread.fpu.fpr[8]); in output_thread_fpu_defines()
[all …]
Dptrace32.c127 tmp = child->thread.fpu.fcr31; in compat_arch_ptrace()
237 memset(&child->thread.fpu, ~0, in compat_arch_ptrace()
238 sizeof(child->thread.fpu)); in compat_arch_ptrace()
239 child->thread.fpu.fcr31 = 0; in compat_arch_ptrace()
267 child->thread.fpu.fcr31 = data; in compat_arch_ptrace()
Dptrace.c123 __put_user(child->thread.fpu.fcr31, data + 64); in ptrace_getfpregs()
164 __get_user(child->thread.fpu.fcr31, data + 64); in ptrace_setfpregs()
324 tmp = child->thread.fpu.fcr31; in arch_ptrace()
413 memset(&child->thread.fpu, ~0, in arch_ptrace()
414 sizeof(child->thread.fpu)); in arch_ptrace()
415 child->thread.fpu.fcr31 = 0; in arch_ptrace()
451 child->thread.fpu.fcr31 = data; in arch_ptrace()
/arch/sh/kernel/cpu/sh2a/
Dfpu.c57 : "0" ((char *)(&tsk->thread.fpu.hard.status)), in save_fpu()
91 : "0" (&tsk->thread.fpu), "r" (FPSCR_RCHG) in restore_fpu()
417 denormal_to_double (struct sh_fpu_hard_struct *fpu, int n) in denormal_to_double() argument
420 unsigned long x = fpu->fpul; in denormal_to_double()
433 fpu->fp_regs[n] = du; in denormal_to_double()
434 fpu->fp_regs[n+1] = dl; in denormal_to_double()
496 if ((tsk->thread.fpu.hard.fpscr & FPSCR_FPU_ERROR)) { in ieee_fpe_handler()
498 denormal_to_double (&tsk->thread.fpu.hard, in ieee_fpe_handler()
513 hx = tsk->thread.fpu.hard.fp_regs[n]; in ieee_fpe_handler()
514 hy = tsk->thread.fpu.hard.fp_regs[m]; in ieee_fpe_handler()
[all …]
/arch/m68k/kernel/
Dprocess.c282 int dump_fpu (struct pt_regs *regs, struct user_m68kfp_struct *fpu) in dump_fpu() argument
289 memcpy(fpu->fpcntl, current->thread.fpcntl, 12); in dump_fpu()
290 memcpy(fpu->fpregs, current->thread.fp, 96); in dump_fpu()
295 fpu->fpregs[i] = ((fpu->fpregs[i] & 0xffff0000) << 15) | in dump_fpu()
296 ((fpu->fpregs[i] & 0x0000ffff) << 16); in dump_fpu()
306 :: "m" (fpu->fpcntl[0]) in dump_fpu()
309 :: "m" (fpu->fpregs[0]) in dump_fpu()
Dsetup.c379 const char *cpu, *mmu, *fpu; in show_cpuinfo() local
405 fpu = "none(soft float)"; in show_cpuinfo()
408 fpu = "68881"; in show_cpuinfo()
410 fpu = "68882"; in show_cpuinfo()
412 fpu = "68040"; in show_cpuinfo()
414 fpu = "68060"; in show_cpuinfo()
416 fpu = "Sun FPA"; in show_cpuinfo()
418 fpu = "none"; in show_cpuinfo()
444 cpu, mmu, fpu, in show_cpuinfo()
/arch/sh/kernel/
Dptrace_32.c163 &target->thread.fpu.hard, 0, -1); in fpregs_get()
166 &target->thread.fpu.soft, 0, -1); in fpregs_get()
184 &target->thread.fpu.hard, 0, -1); in fpregs_set()
187 &target->thread.fpu.soft, 0, -1); in fpregs_set()
323 else if (addr >= (long) &dummy->fpu && in arch_ptrace()
326 if (addr == (long)&dummy->fpu.fpscr) in arch_ptrace()
331 tmp = ((long *)&child->thread.fpu) in arch_ptrace()
332 [(addr - (long)&dummy->fpu) >> 2]; in arch_ptrace()
349 else if (addr >= (long) &dummy->fpu && in arch_ptrace()
352 ((long *)&child->thread.fpu) in arch_ptrace()
[all …]
Dptrace_64.c88 tmp = ((long *)&task->thread.fpu)[addr / sizeof(unsigned long)]; in get_fpu_long()
114 fpinit(&task->thread.fpu.hard); in put_fpu_long()
124 ((long *)&task->thread.fpu)[addr / sizeof(unsigned long)] = data; in put_fpu_long()
222 &target->thread.fpu.hard, 0, -1); in fpregs_get()
239 &target->thread.fpu.hard, 0, -1); in fpregs_set()
316 else if ((addr >= offsetof(struct user, fpu)) && in arch_ptrace()
318 tmp = get_fpu_long(child, addr - offsetof(struct user, fpu)); in arch_ptrace()
353 else if ((addr >= offsetof(struct user, fpu)) && in arch_ptrace()
355 ret = put_fpu_long(child, addr - offsetof(struct user, fpu), data); in arch_ptrace()
Dtraps_64.c627 current->thread.fpu.hard.fp_regs[destreg] = buflo; in misaligned_fpu_load()
631 current->thread.fpu.hard.fp_regs[destreg] = buflo; in misaligned_fpu_load()
632 current->thread.fpu.hard.fp_regs[destreg+1] = bufhi; in misaligned_fpu_load()
635 current->thread.fpu.hard.fp_regs[destreg] = bufhi; in misaligned_fpu_load()
636 current->thread.fpu.hard.fp_regs[destreg+1] = buflo; in misaligned_fpu_load()
638 current->thread.fpu.hard.fp_regs[destreg] = buflo; in misaligned_fpu_load()
639 current->thread.fpu.hard.fp_regs[destreg+1] = bufhi; in misaligned_fpu_load()
697 buflo = current->thread.fpu.hard.fp_regs[srcreg]; in misaligned_fpu_store()
701 buflo = current->thread.fpu.hard.fp_regs[srcreg]; in misaligned_fpu_store()
702 bufhi = current->thread.fpu.hard.fp_regs[srcreg+1]; in misaligned_fpu_store()
[all …]
/arch/sh/math-emu/
Dmath.c477 static void denormal_to_double(struct sh_fpu_hard_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()
555 if ((tsk->thread.fpu.hard.fpscr & (1 << 17))) { in ieee_fpe_handler()
557 denormal_to_double (&tsk->thread.fpu.hard, in ieee_fpe_handler()
559 tsk->thread.fpu.hard.fpscr &= in ieee_fpe_handler()
599 static void fpu_init(struct sh_fpu_soft_struct *fpu) in fpu_init() argument
603 fpu->fpscr = FPSCR_INIT; in fpu_init()
604 fpu->fpul = 0; in fpu_init()
[all …]
/arch/sparc/kernel/
Dcpu.c265 const struct fpu_info *fpu; in set_cpu_and_fpu() local
278 fpu = &manuf->fpu_info[0]; in set_cpu_and_fpu()
279 while (fpu->fp_vers != -1) in set_cpu_and_fpu()
281 if (fpu->fp_vers == fpu_vers) { in set_cpu_and_fpu()
282 sparc_fpu_type = fpu->name; in set_cpu_and_fpu()
285 fpu++; in set_cpu_and_fpu()
Dsignal_32.c83 restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in restore_fpu_state() argument
98 if (!access_ok(VERIFY_READ, fpu, sizeof(*fpu))) in restore_fpu_state()
101 err = __copy_from_user(&current->thread.float_regs[0], &fpu->si_float_regs[0], in restore_fpu_state()
103 err |= __get_user(current->thread.fsr, &fpu->si_fsr); in restore_fpu_state()
104 err |= __get_user(current->thread.fpqdepth, &fpu->si_fpqdepth); in restore_fpu_state()
107 &fpu->si_fpqueue[0], in restore_fpu_state()
282 save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in save_fpu_state() argument
302 err |= __copy_to_user(&fpu->si_float_regs[0], in save_fpu_state()
305 err |= __put_user(current->thread.fsr, &fpu->si_fsr); in save_fpu_state()
306 err |= __put_user(current->thread.fpqdepth, &fpu->si_fpqdepth); in save_fpu_state()
[all …]
Dsignal_64.c270 restore_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in restore_fpu_state() argument
276 err = __get_user(fprs, &fpu->si_fprs); in restore_fpu_state()
280 err |= copy_from_user(fpregs, &fpu->si_float_regs[0], in restore_fpu_state()
283 err |= copy_from_user(fpregs+16, &fpu->si_float_regs[32], in restore_fpu_state()
285 err |= __get_user(current_thread_info()->xfsr[0], &fpu->si_fsr); in restore_fpu_state()
286 err |= __get_user(current_thread_info()->gsr[0], &fpu->si_gsr); in restore_fpu_state()
362 save_fpu_state(struct pt_regs *regs, __siginfo_fpu_t __user *fpu) in save_fpu_state() argument
370 err |= copy_to_user(&fpu->si_float_regs[0], fpregs, in save_fpu_state()
373 err |= copy_to_user(&fpu->si_float_regs[32], fpregs+16, in save_fpu_state()
375 err |= __put_user(current_thread_info()->xfsr[0], &fpu->si_fsr); in save_fpu_state()
[all …]
/arch/m68knommu/kernel/
Dprocess.c250 int dump_fpu(struct pt_regs *regs, struct user_m68kfp_struct *fpu) in dump_fpu() argument
258 memcpy(fpu->fpcntl, current->thread.fpcntl, 12); in dump_fpu()
259 memcpy(fpu->fpregs, current->thread.fp, 96); in dump_fpu()
264 fpu->fpregs[i] = ((fpu->fpregs[i] & 0xffff0000) << 15) | in dump_fpu()
265 ((fpu->fpregs[i] & 0x0000ffff) << 16); in dump_fpu()
275 :: "m" (fpu->fpcntl[0]) in dump_fpu()
278 :: "m" (fpu->fpregs[0]) in dump_fpu()
Dsetup.c220 char *cpu, *mmu, *fpu; in show_cpuinfo() local
225 fpu = "none"; in show_cpuinfo()
239 cpu, mmu, fpu, in show_cpuinfo()
/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
/arch/um/sys-x86_64/asm/
Delf.h98 extern int elf_core_copy_fpregs(struct task_struct *t, elf_fpregset_t *fpu);
100 #define ELF_CORE_COPY_FPREGS(t, fpu) elf_core_copy_fpregs(t, fpu) argument
/arch/sh/kernel/cpu/sh5/
Dfpu.c75 : "r" (&tsk->thread.fpu.hard) in save_fpu()
160 fpload(&current->thread.fpu.hard); in do_fpu_state_restore()
DMakefile6 obj-$(CONFIG_SH_FPU) += fpu.o
/arch/um/sys-i386/asm/
Delf.h79 extern int elf_core_copy_fpregs(struct task_struct *t, elf_fpregset_t *fpu);
81 #define ELF_CORE_COPY_FPREGS(t, fpu) elf_core_copy_fpregs(t, fpu) argument
/arch/m32r/kernel/
Dptrace.c115 else if (off >= (long)(&dummy->fpu >> 2) && in ptrace_read_user()
118 if (off == (long)(&dummy->fpu.fpscr >> 2)) in ptrace_read_user()
123 tmp = ((long *)(&tsk->thread.fpu >> 2)) in ptrace_read_user()
124 [off - (long)&dummy->fpu]; in ptrace_read_user()
172 else if (off >= (long)(&dummy->fpu >> 2) && in ptrace_write_user()
175 ((long *)&tsk->thread.fpu) in ptrace_write_user()
176 [off - (long)&dummy->fpu] = data; in ptrace_write_user()
/arch/mn10300/kernel/
DMakefile6 obj-y := process.o signal.o entry.o fpu.o traps.o irq.o \
12 obj-$(CONFIG_FPU) += fpu-low.o
/arch/sh/include/asm/
Dprocessor_64.h125 union sh_fpu_union fpu; member
140 .fpu = { { { 0, } }, } \

123