Lines Matching refs:spr

442     effR = FIELD_EX64(env->msr, MSR, HV) ? r : env->spr[SPR_LPCR] & LPCR_HR;  in helper_tlbie_isa300()
565 RPN = env->spr[SPR_RPA]; in do_6xx_tlb()
567 CMP = env->spr[SPR_ICMP]; in do_6xx_tlb()
568 EPN = env->spr[SPR_IMISS]; in do_6xx_tlb()
570 CMP = env->spr[SPR_DCMP]; in do_6xx_tlb()
571 EPN = env->spr[SPR_DMISS]; in do_6xx_tlb()
573 way = (env->spr[SPR_SRR1] >> 17) & 1; in do_6xx_tlb()
679 if (env->spr[SPR_40x_PID] != val) { in helper_store_40x_pid()
680 env->spr[SPR_40x_PID] = val; in helper_store_40x_pid()
753 if ((tlb->prot & PAGE_VALID) && tlb->PID == env->spr[SPR_40x_PID]) { in helper_4xx_tlbwe_hi()
782 tlb->PID = env->spr[SPR_40x_PID]; /* PID */ in helper_4xx_tlbwe_hi()
804 if ((tlb->prot & PAGE_VALID) && tlb->PID == env->spr[SPR_40x_PID]) { in helper_4xx_tlbwe_lo()
831 return ppcemb_tlb_search(env, address, env->spr[SPR_40x_PID]); in helper_4xx_tlbsx()
836 if (tlb->PID == env->spr[SPR_BOOKE_PID]) { in mmubooke_pid_match()
843 if (env->spr[SPR_BOOKE_PID1] && tlb->PID == env->spr[SPR_BOOKE_PID1]) { in mmubooke_pid_match()
846 if (env->spr[SPR_BOOKE_PID2] && tlb->PID == env->spr[SPR_BOOKE_PID2]) { in mmubooke_pid_match()
885 tlb->PID = env->spr[SPR_440_MMUCR] & 0x000000FF; in helper_440_tlbwe()
940 env->spr[SPR_440_MMUCR] &= ~0x000000FF; in helper_440_tlbre()
941 env->spr[SPR_440_MMUCR] |= tlb->PID; in helper_440_tlbre()
973 return ppcemb_tlb_search(env, address, env->spr[SPR_440_MMUCR] & 0xFF); in helper_440_tlbsx()
981 int esel = (env->spr[SPR_BOOKE_MAS0] & MAS0_ESEL_MASK) >> MAS0_ESEL_SHIFT; in booke206_cur_tlb()
982 int ea = (env->spr[SPR_BOOKE_MAS2] & MAS2_EPN_MASK); in booke206_cur_tlb()
985 tlb = (env->spr[SPR_BOOKE_MAS0] & MAS0_TLBSEL_MASK) >> MAS0_TLBSEL_SHIFT; in booke206_cur_tlb()
986 tlbncfg = env->spr[SPR_BOOKE_TLB0CFG + tlb]; in booke206_cur_tlb()
988 if ((tlbncfg & TLBnCFG_HES) && (env->spr[SPR_BOOKE_MAS0] & MAS0_HES)) { in booke206_cur_tlb()
997 env->spr[pidn] = pid; in helper_booke_setpid()
1004 env->spr[SPR_BOOKE_EPLC] = val & EPID_MASK; in helper_booke_set_eplc()
1009 env->spr[SPR_BOOKE_EPSC] = val & EPID_MASK; in helper_booke_set_epsc()
1030 switch (env->spr[SPR_BOOKE_MAS0] & MAS0_WQ_MASK) { in helper_booke206_tlbwe()
1048 if (((env->spr[SPR_BOOKE_MAS0] & MAS0_ATSEL) == MAS0_ATSEL_LRAT) && in helper_booke206_tlbwe()
1055 tlbn = (env->spr[SPR_BOOKE_MAS0] & MAS0_TLBSEL_MASK) >> MAS0_TLBSEL_SHIFT; in helper_booke206_tlbwe()
1056 tlbncfg = env->spr[SPR_BOOKE_TLB0CFG + tlbn]; in helper_booke206_tlbwe()
1067 size_tlb = (env->spr[SPR_BOOKE_MAS1] & MAS1_TSIZE_MASK) >> MAS1_TSIZE_SHIFT; in helper_booke206_tlbwe()
1069 if ((env->spr[SPR_BOOKE_MAS1] & MAS1_VALID) && (tlbncfg & TLBnCFG_AVAIL) && in helper_booke206_tlbwe()
1096 tlb->mas7_3 = ((uint64_t)env->spr[SPR_BOOKE_MAS7] << 32) | in helper_booke206_tlbwe()
1097 env->spr[SPR_BOOKE_MAS3]; in helper_booke206_tlbwe()
1098 tlb->mas1 = env->spr[SPR_BOOKE_MAS1]; in helper_booke206_tlbwe()
1100 if ((env->spr[SPR_MMUCFG] & MMUCFG_MAVN) == MMUCFG_MAVN_V2) { in helper_booke206_tlbwe()
1125 tlb->mas2 = env->spr[SPR_BOOKE_MAS2] & mask; in helper_booke206_tlbwe()
1140 env->spr[SPR_BOOKE_MAS0] = tlbn << MAS0_TLBSEL_SHIFT; in booke206_tlb_to_mas()
1141 env->spr[SPR_BOOKE_MAS0] |= way << MAS0_ESEL_SHIFT; in booke206_tlb_to_mas()
1142 env->spr[SPR_BOOKE_MAS0] |= env->last_way << MAS0_NV_SHIFT; in booke206_tlb_to_mas()
1144 env->spr[SPR_BOOKE_MAS1] = tlb->mas1; in booke206_tlb_to_mas()
1145 env->spr[SPR_BOOKE_MAS2] = tlb->mas2; in booke206_tlb_to_mas()
1146 env->spr[SPR_BOOKE_MAS3] = tlb->mas7_3; in booke206_tlb_to_mas()
1147 env->spr[SPR_BOOKE_MAS7] = tlb->mas7_3 >> 32; in booke206_tlb_to_mas()
1156 env->spr[SPR_BOOKE_MAS1] = 0; in helper_booke206_tlbre()
1169 spid = (env->spr[SPR_BOOKE_MAS6] & MAS6_SPID_MASK) >> MAS6_SPID_SHIFT; in helper_booke206_tlbsx()
1170 sas = env->spr[SPR_BOOKE_MAS6] & MAS6_SAS; in helper_booke206_tlbsx()
1196 env->spr[SPR_BOOKE_MAS0] = env->spr[SPR_BOOKE_MAS4] & MAS4_TLBSELD_MASK; in helper_booke206_tlbsx()
1197 env->spr[SPR_BOOKE_MAS1] = env->spr[SPR_BOOKE_MAS4] & MAS4_TSIZED_MASK; in helper_booke206_tlbsx()
1198 env->spr[SPR_BOOKE_MAS2] = env->spr[SPR_BOOKE_MAS4] & MAS4_WIMGED_MASK; in helper_booke206_tlbsx()
1199 env->spr[SPR_BOOKE_MAS3] = 0; in helper_booke206_tlbsx()
1200 env->spr[SPR_BOOKE_MAS7] = 0; in helper_booke206_tlbsx()
1202 if (env->spr[SPR_BOOKE_MAS6] & MAS6_SAS) { in helper_booke206_tlbsx()
1203 env->spr[SPR_BOOKE_MAS1] |= MAS1_TS; in helper_booke206_tlbsx()
1206 env->spr[SPR_BOOKE_MAS1] |= (env->spr[SPR_BOOKE_MAS6] >> 16) in helper_booke206_tlbsx()
1210 env->spr[SPR_BOOKE_MAS0] |= env->last_way << MAS0_ESEL_SHIFT; in helper_booke206_tlbsx()
1213 env->spr[SPR_BOOKE_MAS0] |= env->last_way << MAS0_NV_SHIFT; in helper_booke206_tlbsx()
1276 int tid = (env->spr[SPR_BOOKE_MAS6] & MAS6_SPID); in helper_booke206_tlbilx1()
1298 int tid = (env->spr[SPR_BOOKE_MAS6] & MAS6_SPID); in helper_booke206_tlbilx3()
1300 int sgs = env->spr[SPR_BOOKE_MAS5] & MAS5_SGS; in helper_booke206_tlbilx3()
1301 int ind = (env->spr[SPR_BOOKE_MAS6] & MAS6_SIND) ? MAS1_IND : 0; in helper_booke206_tlbilx3()
1303 int size = env->spr[SPR_BOOKE_MAS6] & MAS6_ISIZE_MASK; in helper_booke206_tlbilx3()