Lines Matching refs:msr

98 	    MSR_TM_ACTIVE(tsk->thread.regs->msr) &&  in check_if_tm_restore_required()
100 tsk->thread.ckpt_regs.msr = tsk->thread.regs->msr; in check_if_tm_restore_required()
105 static inline bool msr_tm_active(unsigned long msr) in msr_tm_active() argument
107 return MSR_TM_ACTIVE(msr); in msr_tm_active()
112 return msr_tm_active(tsk->thread.regs->msr) && in tm_active_with_fp()
113 (tsk->thread.ckpt_regs.msr & MSR_FP); in tm_active_with_fp()
118 return msr_tm_active(tsk->thread.regs->msr) && in tm_active_with_altivec()
119 (tsk->thread.ckpt_regs.msr & MSR_VEC); in tm_active_with_altivec()
122 static inline bool msr_tm_active(unsigned long msr) { return false; } in msr_tm_active() argument
179 unsigned long msr; in __giveup_fpu() local
182 msr = tsk->thread.regs->msr; in __giveup_fpu()
183 msr &= ~MSR_FP; in __giveup_fpu()
186 msr &= ~MSR_VSX; in __giveup_fpu()
188 tsk->thread.regs->msr = msr; in __giveup_fpu()
217 if (tsk->thread.regs->msr & MSR_FP) { in flush_fp_to_thread()
241 if (current->thread.regs && (current->thread.regs->msr & MSR_FP)) { in enable_kernel_fp()
250 if(!msr_tm_active(cpumsr) && msr_tm_active(current->thread.regs->msr)) in enable_kernel_fp()
275 unsigned long msr; in __giveup_altivec() local
278 msr = tsk->thread.regs->msr; in __giveup_altivec()
279 msr &= ~MSR_VEC; in __giveup_altivec()
282 msr &= ~MSR_VSX; in __giveup_altivec()
284 tsk->thread.regs->msr = msr; in __giveup_altivec()
305 if (current->thread.regs && (current->thread.regs->msr & MSR_VEC)) { in enable_kernel_altivec()
314 if(!msr_tm_active(cpumsr) && msr_tm_active(current->thread.regs->msr)) in enable_kernel_altivec()
329 if (tsk->thread.regs->msr & MSR_VEC) { in flush_altivec_to_thread()
358 unsigned long msr = tsk->thread.regs->msr; in __giveup_vsx() local
364 WARN_ON((msr & MSR_VSX) && !((msr & MSR_FP) && (msr & MSR_VEC))); in __giveup_vsx()
367 if (msr & MSR_FP) in __giveup_vsx()
369 if (msr & MSR_VEC) in __giveup_vsx()
391 (current->thread.regs->msr & (MSR_VSX|MSR_VEC|MSR_FP))) { in enable_kernel_vsx()
400 if(!msr_tm_active(cpumsr) && msr_tm_active(current->thread.regs->msr)) in enable_kernel_vsx()
411 if (tsk->thread.regs->msr & (MSR_VSX|MSR_VEC|MSR_FP)) { in flush_vsx_to_thread()
450 if (current->thread.regs && (current->thread.regs->msr & MSR_SPE)) { in enable_kernel_spe()
461 if (tsk->thread.regs->msr & MSR_SPE) { in flush_spe_to_thread()
502 usermsr = tsk->thread.regs->msr; in giveup_all()
531 unsigned long msr; in restore_math() local
533 if (!msr_tm_active(regs->msr) && in restore_math()
537 msr = regs->msr; in restore_math()
544 if ((!(msr & MSR_FP)) && restore_fp(current)) in restore_math()
545 msr |= MSR_FP | current->thread.fpexc_mode; in restore_math()
547 if ((!(msr & MSR_VEC)) && restore_altivec(current)) in restore_math()
548 msr |= MSR_VEC; in restore_math()
550 if ((msr & (MSR_FP | MSR_VEC)) == (MSR_FP | MSR_VEC) && in restore_math()
552 msr |= MSR_VSX; in restore_math()
557 regs->msr = msr; in restore_math()
567 usermsr = tsk->thread.regs->msr; in save_all()
597 if (tsk->thread.regs->msr & MSR_SPE) in flush_all_to_thread()
867 return tsk && tsk->thread.regs && (tsk->thread.regs->msr & MSR_TM); in tm_enabled()
906 if ((thr->ckpt_regs.msr & MSR_FP) == 0) in tm_reclaim_thread()
909 if ((thr->ckpt_regs.msr & MSR_VEC) == 0) in tm_reclaim_thread()
937 if (!MSR_TM_ACTIVE(thr->regs->msr)) in tm_reclaim_task()
945 thr->regs->ccr, thr->regs->msr, in tm_reclaim_task()
968 if (!(thread->regs->msr & MSR_TM)) in tm_recheckpoint()
1004 if (!MSR_TM_ACTIVE(new->thread.regs->msr)){ in tm_recheckpoint_new_task()
1010 new->pid, new->thread.regs->msr); in tm_recheckpoint_new_task()
1019 new->thread.regs->msr &= ~(MSR_FP | MSR_VEC | MSR_VSX); in tm_recheckpoint_new_task()
1036 if (!MSR_TM_ACTIVE(prev->thread.regs->msr) && prev->thread.load_tm == 0) in __switch_to_tm()
1037 prev->thread.regs->msr &= ~MSR_TM; in __switch_to_tm()
1069 if (!MSR_TM_ACTIVE(regs->msr)) in restore_tm_state()
1072 msr_diff = current->thread.ckpt_regs.msr & ~regs->msr; in restore_tm_state()
1084 regs->msr |= msr_diff; in restore_tm_state()
1282 if (!(regs->msr & MSR_IR)) in show_instructions()
1445 printk("MSR: "REG" ", regs->msr); in show_regs()
1446 print_msr_bits(regs->msr); in show_regs()
1461 if (MSR_TM_ACTIVE(regs->msr)) in show_regs()
1678 childregs->msr &= ~(MSR_FP|MSR_VEC|MSR_VSX); in copy_thread()
1768 regs->msr = MSR_USER; in start_thread()
1810 regs->msr = MSR_USER64; in start_thread()
1814 regs->msr = MSR_USER32; in start_thread()
1894 if (regs != NULL && (regs->msr & MSR_FP) != 0) in set_fpexc_mode()
1895 regs->msr = (regs->msr & ~(MSR_FE0|MSR_FE1)) in set_fpexc_mode()
1943 regs->msr &= ~MSR_LE; in set_endian()
1945 regs->msr |= MSR_LE; in set_endian()
1964 if (regs->msr & MSR_LE) { in get_endian()