Lines Matching refs:slb
65 ppc_slb_t *slb = &env->slb[n]; in slb_lookup() local
68 PRIx64 "\n", __func__, n, slb->esid, slb->vsid); in slb_lookup()
74 if (((slb->esid == esid_256M) && in slb_lookup()
75 ((slb->vsid & SLB_VSID_B) == SLB_VSID_B_256M)) in slb_lookup()
76 || ((slb->esid == esid_1T) && in slb_lookup()
77 ((slb->vsid & SLB_VSID_B) == SLB_VSID_B_1T))) { in slb_lookup()
78 return slb; in slb_lookup()
95 slbe = env->slb[i].esid; in dump_slb()
96 slbv = env->slb[i].vsid; in dump_slb()
162 ppc_slb_t *slb = &env->slb[n]; in helper_SLBIA() local
164 if (!(slb->esid & SLB_ESID_V)) { in helper_SLBIA()
168 if (ih == 0x3 && (slb->vsid & SLB_VSID_C) == 0) { in helper_SLBIA()
174 slb->esid &= ~SLB_ESID_V; in helper_SLBIA()
199 ppc_slb_t *slb = &env->slb[n]; in helper_SLBIAG() local
200 slb->esid &= ~SLB_ESID_V; in helper_SLBIAG()
209 ppc_slb_t *slb; in __helper_slbie() local
211 slb = slb_lookup(cpu, addr); in __helper_slbie()
212 if (!slb) { in __helper_slbie()
216 if (slb->esid & SLB_ESID_V) { in __helper_slbie()
217 slb->esid &= ~SLB_ESID_V; in __helper_slbie()
244 ppc_slb_t *slb = &env->slb[slot]; in ppc_store_slb() local
281 slb->esid = esid; in ppc_store_slb()
282 slb->vsid = vsid; in ppc_store_slb()
283 slb->sps = sps; in ppc_store_slb()
287 slb->esid, slb->vsid); in ppc_store_slb()
298 ppc_slb_t *slb = &env->slb[slot]; in ppc_load_slb_esid() local
304 *rt = slb->esid; in ppc_load_slb_esid()
313 ppc_slb_t *slb = &env->slb[slot]; in ppc_load_slb_vsid() local
319 *rt = slb->vsid; in ppc_load_slb_vsid()
327 ppc_slb_t *slb; in ppc_find_slb_vsid() local
332 slb = slb_lookup(cpu, rb); in ppc_find_slb_vsid()
333 if (slb == NULL) { in ppc_find_slb_vsid()
336 *rt = slb->vsid; in ppc_find_slb_vsid()
399 ppc_slb_t *slb, ppc_hash_pte64_t pte) in ppc_hash64_pte_prot() argument
408 key = !!(mmuidx_pr(mmu_idx) ? (slb->vsid & SLB_VSID_KP) in ppc_hash64_pte_prot()
409 : (slb->vsid & SLB_VSID_KS)); in ppc_hash64_pte_prot()
708 ppc_slb_t *slb, target_ulong eaddr, in ppc_hash64_htab_lookup() argument
714 const PPCHash64SegmentPageSizes *sps = slb->sps; in ppc_hash64_htab_lookup()
731 if (slb->vsid & SLB_VSID_B) { in ppc_hash64_htab_lookup()
733 vsid = (slb->vsid & SLB_VSID_VSID) >> SLB_VSID_SHIFT_1T; in ppc_hash64_htab_lookup()
738 vsid = (slb->vsid & SLB_VSID_VSID) >> SLB_VSID_SHIFT; in ppc_hash64_htab_lookup()
742 ptem = (slb->vsid & SLB_VSID_PTEM) | ((epn >> 16) & HPTE64_V_AVPN); in ppc_hash64_htab_lookup()
956 static int build_vrma_slbe(PowerPCCPU *cpu, ppc_slb_t *slb) in build_vrma_slbe() argument
970 slb->esid = SLB_ESID_V; in build_vrma_slbe()
971 slb->vsid = vsid; in build_vrma_slbe()
972 slb->sps = sps; in build_vrma_slbe()
989 ppc_slb_t *slb; in ppc_hash64_xlate() local
1025 slb = &vrma_slbe; in ppc_hash64_xlate()
1026 if (build_vrma_slbe(cpu, slb) != 0) { in ppc_hash64_xlate()
1071 slb = slb_lookup(cpu, eaddr); in ppc_hash64_xlate()
1072 if (!slb) { in ppc_hash64_xlate()
1103 if (access_type == MMU_INST_FETCH && (slb->vsid & SLB_VSID_N)) { in ppc_hash64_xlate()
1105 ppc_hash64_set_isi(cs, mmu_idx, slb->vsid, SRR1_NOEXEC_GUARD); in ppc_hash64_xlate()
1111 ptex = ppc_hash64_htab_lookup(cpu, slb, eaddr, &pte, &apshift); in ppc_hash64_xlate()
1118 ppc_hash64_set_isi(cs, mmu_idx, slb->vsid, SRR1_NOPTE); in ppc_hash64_xlate()
1121 ppc_hash64_set_dsi(cs, mmu_idx, slb->vsid, eaddr, DSISR_NOPTE); in ppc_hash64_xlate()
1124 ppc_hash64_set_dsi(cs, mmu_idx, slb->vsid, eaddr, in ppc_hash64_xlate()
1138 pp_prot = ppc_hash64_pte_prot(mmu_idx, slb, pte); in ppc_hash64_xlate()
1159 ppc_hash64_set_isi(cs, mmu_idx, slb->vsid, srr1); in ppc_hash64_xlate()
1171 ppc_hash64_set_dsi(cs, mmu_idx, slb->vsid, eaddr, dsisr); in ppc_hash64_xlate()