Home
last modified time | relevance | path

Searched refs:fpscr (Results 1 – 25 of 35) sorted by relevance

12

/arch/powerpc/include/asm/
Dkvm_fpu.h25 extern void fps_fres(u64 *fpscr, u32 *dst, u32 *src1);
26 extern void fps_frsqrte(u64 *fpscr, u32 *dst, u32 *src1);
27 extern void fps_fsqrts(u64 *fpscr, u32 *dst, u32 *src1);
29 extern void fps_fadds(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2);
30 extern void fps_fdivs(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2);
31 extern void fps_fmuls(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2);
32 extern void fps_fsubs(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2);
34 extern void fps_fmadds(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2,
36 extern void fps_fmsubs(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2,
38 extern void fps_fnmadds(u64 *fpscr, u32 *dst, u32 *src1, u32 *src2,
[all …]
/arch/powerpc/math-emu/
Dmtfsf.c13 u32 fpscr; in mtfsf() local
30 fpscr = ((__FPU_FPSCR & ~mask) | (frB[1] & mask)) & in mtfsf()
33 if (fpscr & (FPSCR_VXSNAN | FPSCR_VXISI | FPSCR_VXIDI | in mtfsf()
36 fpscr |= FPSCR_VX; in mtfsf()
42 if (fpscr & (fpscr >> 22) & 0xf8) in mtfsf()
43 fpscr |= FPSCR_FEX; in mtfsf()
45 __FPU_FPSCR = fpscr; in mtfsf()
Dmath.c170 u32 fpscr; in record_exception() local
172 fpscr = __FPU_FPSCR; in record_exception()
175 fpscr |= FPSCR_FX; in record_exception()
177 fpscr |= FPSCR_OX; in record_exception()
179 fpscr |= FPSCR_UX; in record_exception()
181 fpscr |= FPSCR_ZX; in record_exception()
183 fpscr |= FPSCR_XX; in record_exception()
185 fpscr |= FPSCR_VX; in record_exception()
187 fpscr |= FPSCR_VXSNAN; in record_exception()
189 fpscr |= FPSCR_VXISI; in record_exception()
[all …]
Dfctiwz.c15 u32 fpscr; in fctiwz() local
18 fpscr = __FPU_FPSCR; in fctiwz()
26 __FPU_FPSCR = fpscr; in fctiwz()
/arch/arm/vfp/
Dvfpsingle.c69 #define vfp_single_normaliseround(sd,vsd,fpscr,except,func) __vfp_single_normaliseround(sd,vsd,fpsc… argument
70 u32 __vfp_single_normaliseround(int sd, struct vfp_single *vs, u32 fpscr, u32 exceptions) in __vfp_single_normaliseround() argument
72 u32 vfp_single_normaliseround(int sd, struct vfp_single *vs, u32 fpscr, u32 exceptions, const char … in __vfp_single_normaliseround()
134 rmode = fpscr & FPSCR_RMODE_MASK; in __vfp_single_normaliseround()
216 struct vfp_single *vsm, u32 fpscr) in vfp_propagate_nan() argument
226 if (fpscr & FPSCR_DEFAULT_NAN) in vfp_propagate_nan()
259 static u32 vfp_single_fabs(int sd, int unused, s32 m, u32 fpscr) in vfp_single_fabs() argument
265 static u32 vfp_single_fcpy(int sd, int unused, s32 m, u32 fpscr) in vfp_single_fcpy() argument
271 static u32 vfp_single_fneg(int sd, int unused, s32 m, u32 fpscr) in vfp_single_fneg() argument
316 static u32 vfp_single_fsqrt(int sd, int unused, s32 m, u32 fpscr) in vfp_single_fsqrt() argument
[all …]
Dvfpdouble.c70 u32 vfp_double_normaliseround(int dd, struct vfp_double *vd, u32 fpscr, u32 exceptions, const char … in vfp_double_normaliseround() argument
129 rmode = fpscr & FPSCR_RMODE_MASK; in vfp_double_normaliseround()
208 struct vfp_double *vdm, u32 fpscr) in vfp_propagate_nan() argument
218 if (fpscr & FPSCR_DEFAULT_NAN) in vfp_propagate_nan()
250 static u32 vfp_double_fabs(int dd, int unused, int dm, u32 fpscr) in vfp_double_fabs() argument
256 static u32 vfp_double_fcpy(int dd, int unused, int dm, u32 fpscr) in vfp_double_fcpy() argument
262 static u32 vfp_double_fneg(int dd, int unused, int dm, u32 fpscr) in vfp_double_fneg() argument
268 static u32 vfp_double_fsqrt(int dd, int unused, int dm, u32 fpscr) in vfp_double_fsqrt() argument
279 ret = vfp_propagate_nan(vdp, &vdm, NULL, fpscr); in vfp_double_fsqrt()
349 return vfp_double_normaliseround(dd, &vdd, fpscr, 0, "fsqrt"); in vfp_double_fsqrt()
[all …]
Dvfpmodule.c115 vfp->hard.fpscr = FPSCR_ROUND_NEAREST; in vfp_thread_flush()
252 static void vfp_raise_exceptions(u32 exceptions, u32 inst, u32 fpscr, struct pt_regs *regs) in vfp_raise_exceptions() argument
270 fpscr &= ~(FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V); in vfp_raise_exceptions()
272 fpscr |= exceptions; in vfp_raise_exceptions()
274 fmxr(FPSCR, fpscr); in vfp_raise_exceptions()
277 if (exceptions & stat && fpscr & en) \ in vfp_raise_exceptions()
296 static u32 vfp_emulate_instruction(u32 inst, u32 fpscr, struct pt_regs *regs) in vfp_emulate_instruction() argument
300 pr_debug("VFP: emulate: INST=0x%08x SCR=0x%08x\n", inst, fpscr); in vfp_emulate_instruction()
308 exceptions = vfp_single_cpdo(inst, fpscr); in vfp_emulate_instruction()
310 exceptions = vfp_double_cpdo(inst, fpscr); in vfp_emulate_instruction()
[all …]
Dvfpinstr.h85 u32 vfp_single_cpdo(u32 inst, u32 fpscr);
86 u32 vfp_single_cprt(u32 inst, u32 fpscr, struct pt_regs *regs);
88 u32 vfp_double_cpdo(u32 inst, u32 fpscr);
Dvfp.h248 #define vfp_single_normaliseround(sd,vsd,fpscr,except,func) __vfp_single_normaliseround(sd,vsd,fpsc… argument
249 u32 __vfp_single_normaliseround(int sd, struct vfp_single *vs, u32 fpscr, u32 exceptions);
251 u32 vfp_single_normaliseround(int sd, struct vfp_single *vs, u32 fpscr, u32 exceptions, const char …
346 u32 vfp_double_normaliseround(int dd, struct vfp_double *vd, u32 fpscr, u32 exceptions, const char …
376 u32 (* const fn)(int dd, int dn, int dm, u32 fpscr);
/arch/sh/kernel/cpu/sh4/
Dfpu.c233 if ((tsk->thread.xstate->hardfpu.fpscr & FPSCR_CAUSE_ERROR)) in ieee_fpe_handler()
245 int fpscr; in ieee_fpe_handler() local
253 fpscr = tsk->thread.xstate->hardfpu.fpscr; in ieee_fpe_handler()
254 prec = fpscr & FPSCR_DBL_PRECISION; in ieee_fpe_handler()
256 if ((fpscr & FPSCR_CAUSE_ERROR) in ieee_fpe_handler()
269 } else if ((fpscr & FPSCR_CAUSE_ERROR) in ieee_fpe_handler()
283 int fpscr; in ieee_fpe_handler() local
291 fpscr = tsk->thread.xstate->hardfpu.fpscr; in ieee_fpe_handler()
292 prec = fpscr & FPSCR_DBL_PRECISION; in ieee_fpe_handler()
294 if ((fpscr & FPSCR_CAUSE_ERROR) in ieee_fpe_handler()
[all …]
/arch/powerpc/kvm/
Dbook3s_paired_singles.c504 void (*func)(u64 *fpscr, in kvmppc_ps_three_in() argument
524 func(&vcpu->arch.fp.fpscr, &ps0_out, &ps0_in1, &ps0_in2, &ps0_in3); in kvmppc_ps_three_in()
541 func(&vcpu->arch.fp.fpscr, &qpr[reg_out], &ps1_in1, &ps1_in2, &ps1_in3); in kvmppc_ps_three_in()
552 void (*func)(u64 *fpscr, in kvmppc_ps_two_in() argument
573 func(&vcpu->arch.fp.fpscr, &ps0_out, &ps0_in1, &ps0_in2); in kvmppc_ps_two_in()
589 func(&vcpu->arch.fp.fpscr, &ps1_out, &ps1_in1, &ps1_in2); in kvmppc_ps_two_in()
615 func(&vcpu->arch.fp.fpscr, &ps0_out, &ps0_in); in kvmppc_ps_one_in()
624 func(&vcpu->arch.fp.fpscr, &qpr[reg_out], &ps1_in); in kvmppc_ps_one_in()
1110 fpd_fadds(&vcpu->arch.fp.fpscr, &cr, fpr_d, fpr_a, fpr_b); in kvmppc_emulate_paired_single()
1114 fpd_fsubs(&vcpu->arch.fp.fpscr, &cr, fpr_d, fpr_a, fpr_b); in kvmppc_emulate_paired_single()
[all …]
/arch/sh/kernel/cpu/sh2a/
Dfpu.c459 if ((tsk->thread.xstate->hardfpu.fpscr & FPSCR_FPU_ERROR)) { in ieee_fpe_handler()
470 int fpscr; in ieee_fpe_handler() local
478 fpscr = tsk->thread.xstate->hardfpu.fpscr; in ieee_fpe_handler()
479 prec = fpscr & (1 << 19); in ieee_fpe_handler()
481 if ((fpscr & FPSCR_FPU_ERROR) in ieee_fpe_handler()
497 } else if ((fpscr & FPSCR_FPU_ERROR) in ieee_fpe_handler()
513 int fpscr; in ieee_fpe_handler() local
521 fpscr = tsk->thread.xstate->hardfpu.fpscr; in ieee_fpe_handler()
522 prec = fpscr & (1 << 19); in ieee_fpe_handler()
524 if ((fpscr & FPSCR_FPU_ERROR) in ieee_fpe_handler()
[all …]
/arch/sh/include/asm/
Duser.h34 unsigned int fpscr; member
40 unsigned long fpscr; member
Dprocessor_32.h75 unsigned long fpscr; member
85 unsigned long fpscr; member
Dprocessor_64.h85 unsigned int fpscr; member
92 unsigned int fpscr; member
/arch/sh/kernel/cpu/
Dfpu.c32 fp->fpscr = FPSCR_INIT; in init_fpu()
36 fp->fpscr = FPSCR_INIT; in init_fpu()
/arch/arm64/kernel/
Dsignal32.c73 compat_ulong_t fpscr; member
234 compat_ulong_t fpscr, fpexc; in compat_preserve_vfp_context() local
262 fpscr = (fpsimd->fpsr & VFP_FPSCR_STAT_MASK) | in compat_preserve_vfp_context()
264 __put_user_error(fpscr, &frame->ufp.fpscr, err); in compat_preserve_vfp_context()
283 compat_ulong_t fpscr; in compat_restore_vfp_context() local
304 __get_user_error(fpscr, &frame->ufp.fpscr, err); in compat_restore_vfp_context()
305 fpsimd.fpsr = fpscr & VFP_FPSCR_STAT_MASK; in compat_restore_vfp_context()
306 fpsimd.fpcr = fpscr & VFP_FPSCR_CTRL_MASK; in compat_restore_vfp_context()
Dptrace.c930 compat_ulong_t fpscr; in compat_vfp_get() local
950 fpscr = (uregs->fpsr & VFP_FPSCR_STAT_MASK) | in compat_vfp_get()
953 ret = user_regset_copyout(&pos, &count, &kbuf, &ubuf, &fpscr, in compat_vfp_get()
966 compat_ulong_t fpscr; in compat_vfp_set() local
979 ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf, &fpscr, in compat_vfp_set()
982 uregs->fpsr = fpscr & VFP_FPSCR_STAT_MASK; in compat_vfp_set()
983 uregs->fpcr = fpscr & VFP_FPSCR_CTRL_MASK; in compat_vfp_set()
/arch/arm/include/asm/
Duser.h91 unsigned long fpscr; member
Dfpstate.h36 __u32 fpscr; member
/arch/powerpc/kernel/
Dtraps.c798 static inline int __parse_fpscr(unsigned long fpscr) in __parse_fpscr() argument
803 if ((fpscr & FPSCR_VE) && (fpscr & FPSCR_VX)) in __parse_fpscr()
807 else if ((fpscr & FPSCR_OE) && (fpscr & FPSCR_OX)) in __parse_fpscr()
811 else if ((fpscr & FPSCR_UE) && (fpscr & FPSCR_UX)) in __parse_fpscr()
815 else if ((fpscr & FPSCR_ZE) && (fpscr & FPSCR_ZX)) in __parse_fpscr()
819 else if ((fpscr & FPSCR_XE) && (fpscr & FPSCR_XX)) in __parse_fpscr()
831 code = __parse_fpscr(current->thread.fp_state.fpscr); in parse_fpe()
1091 code = __parse_fpscr(current->thread.fp_state.fpscr); in emulate_math()
Dsignal_32.c274 buf[i] = task->thread.fp_state.fpscr; in copy_fpr_to_user()
288 task->thread.fp_state.fpscr = buf[i]; in copy_fpr_from_user()
328 buf[i] = task->thread.ckfp_state.fpscr; in copy_ckfpr_to_user()
342 task->thread.ckfp_state.fpscr = buf[i]; in copy_ckfpr_from_user()
1054 tsk->thread.fp_state.fpscr = 0; /* turn off all fp exceptions */ in handle_rt_signal32()
1495 tsk->thread.fp_state.fpscr = 0; /* turn off all fp exceptions */ in handle_signal32()
Dptrace.c437 buf[32] = target->thread.fp_state.fpscr; in fpr_get()
440 BUILD_BUG_ON(offsetof(struct thread_fp_state, fpscr) != in fpr_get()
475 buf[32] = target->thread.fp_state.fpscr; in fpr_set()
484 target->thread.fp_state.fpscr = buf[32]; in fpr_set()
487 BUILD_BUG_ON(offsetof(struct thread_fp_state, fpscr) != in fpr_set()
999 buf[32] = target->thread.ckfp_state.fpscr; in tm_cfpr_get()
1044 buf[32] = target->thread.ckfp_state.fpscr; in tm_cfpr_set()
1052 target->thread.ckfp_state.fpscr = buf[32]; in tm_cfpr_set()
2926 tmp = child->thread.fp_state.fpscr; in arch_ptrace()
2959 child->thread.fp_state.fpscr = data; in arch_ptrace()
/arch/arm/kernel/
Dptrace.c675 const size_t user_fpscr_offset = offsetof(struct user_vfp, fpscr); in vfp_get()
693 &vfp->fpscr, in vfp_get()
695 user_fpscr_offset + sizeof(vfp->fpscr)); in vfp_get()
712 const size_t user_fpscr_offset = offsetof(struct user_vfp, fpscr); in vfp_set()
731 &new_vfp.fpscr, in vfp_set()
733 user_fpscr_offset + sizeof(new_vfp.fpscr)); in vfp_set()
/arch/sh/math-emu/
Dmath.c27 #define FPSCR (fregs->fpscr)
555 if ((tsk->thread.xstate->softfpu.fpscr & (1 << 17))) { in ieee_fpe_handler()
559 tsk->thread.xstate->softfpu.fpscr &= in ieee_fpe_handler()
585 fpu->fpscr = FPSCR_INIT; in fpu_init()

12