Lines Matching refs:fpscr

112 	vfp->hard.fpscr = FPSCR_ROUND_NEAREST;  in vfp_thread_flush()
243 static void vfp_raise_exceptions(u32 exceptions, u32 inst, u32 fpscr, struct pt_regs *regs) in vfp_raise_exceptions() argument
261 fpscr &= ~(FPSCR_N|FPSCR_Z|FPSCR_C|FPSCR_V); in vfp_raise_exceptions()
263 fpscr |= exceptions; in vfp_raise_exceptions()
265 fmxr(FPSCR, fpscr); in vfp_raise_exceptions()
268 if (exceptions & stat && fpscr & en) \ in vfp_raise_exceptions()
287 static u32 vfp_emulate_instruction(u32 inst, u32 fpscr, struct pt_regs *regs) in vfp_emulate_instruction() argument
291 pr_debug("VFP: emulate: INST=0x%08x SCR=0x%08x\n", inst, fpscr); in vfp_emulate_instruction()
299 exceptions = vfp_single_cpdo(inst, fpscr); in vfp_emulate_instruction()
301 exceptions = vfp_double_cpdo(inst, fpscr); in vfp_emulate_instruction()
325 u32 fpscr, orig_fpscr, fpsid, exceptions; in VFP_bounce() local
345 orig_fpscr = fpscr = fmrx(FPSCR); in VFP_bounce()
351 && (fpscr & FPSCR_IXE)) { in VFP_bounce()
373 vfp_raise_exceptions(VFP_EXCEPTION_ERROR, trigger, fpscr, regs); in VFP_bounce()
387 fpscr &= ~FPSCR_LENGTH_MASK; in VFP_bounce()
388 fpscr |= (len & FPEXC_LENGTH_MASK) << (FPSCR_LENGTH_BIT - FPEXC_LENGTH_BIT); in VFP_bounce()
396 exceptions = vfp_emulate_instruction(trigger, fpscr, regs); in VFP_bounce()
569 ufp->fpscr = hwstate->fpscr; in vfp_preserve_user_clear_hwstate()
585 hwstate->fpscr &= ~(FPSCR_LENGTH_MASK | FPSCR_STRIDE_MASK); in vfp_preserve_user_clear_hwstate()
607 hwstate->fpscr = ufp->fpscr; in vfp_restore_user_hwstate()