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()
326 u32 fpscr, orig_fpscr, fpsid, exceptions; in VFP_bounce() local
346 orig_fpscr = fpscr = fmrx(FPSCR); in VFP_bounce()
352 && (fpscr & FPSCR_IXE)) { in VFP_bounce()
372 vfp_raise_exceptions(VFP_EXCEPTION_ERROR, trigger, fpscr, regs); in VFP_bounce()
386 fpscr &= ~FPSCR_LENGTH_MASK; in VFP_bounce()
387 fpscr |= (len & FPEXC_LENGTH_MASK) << (FPSCR_LENGTH_BIT - FPEXC_LENGTH_BIT); in VFP_bounce()
395 exceptions = vfp_emulate_instruction(trigger, fpscr, regs); in VFP_bounce()
566 ufp->fpscr = hwstate->fpscr; in vfp_preserve_user_clear_hwstate()
582 hwstate->fpscr &= ~(FPSCR_LENGTH_MASK | FPSCR_STRIDE_MASK); in vfp_preserve_user_clear_hwstate()
604 hwstate->fpscr = ufp->fpscr; in vfp_restore_user_hwstate()
754 u32 fpscr = fmrx(FPSCR); in vfp_support_entry() local
762 if (!(fpscr & FPSCR_IXE)) { in vfp_support_entry()
763 if (!(fpscr & FPSCR_LENGTH_MASK)) { in vfp_support_entry()