/* * Ensure that the VFP state stored in 'thread->vfpstate' is up to date * with the hardware state. */ void vfp_sync_hwstate(struct thread_info *thread) { unsigned int cpu = get_cpu(); if (vfp_state_in_hw(cpu, thread)) { u32 fpexc = fmrx(FPEXC); /* * Save the last VFP state on this CPU. */ fmxr(FPEXC, fpexc | FPEXC_EN); vfp_save_state(&thread->vfpstate, fpexc | FPEXC_EN); fmxr(FPEXC, fpexc); } put_cpu(); }