Lines Matching refs:tlb
120 LoongArchTLB *tlb = &env->tlb[index]; in invalidate_tlb_entry() local
123 uint8_t tlb_v0 = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, V); in invalidate_tlb_entry()
124 uint8_t tlb_v1 = FIELD_EX64(tlb->tlb_entry1, TLBENTRY, V); in invalidate_tlb_entry()
125 uint64_t tlb_vppn = FIELD_EX64(tlb->tlb_misc, TLB_MISC, VPPN); in invalidate_tlb_entry()
128 tlb_ps = FIELD_EX64(tlb->tlb_misc, TLB_MISC, PS); in invalidate_tlb_entry()
150 LoongArchTLB *tlb; in invalidate_tlb() local
154 tlb = &env->tlb[index]; in invalidate_tlb()
155 tlb_asid = FIELD_EX64(tlb->tlb_misc, TLB_MISC, ASID); in invalidate_tlb()
156 tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in invalidate_tlb()
165 LoongArchTLB *tlb = &env->tlb[index]; in fill_tlb_entry() local
196 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, PS, csr_ps); in fill_tlb_entry()
199 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, VPPN, csr_vppn); in fill_tlb_entry()
200 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 1); in fill_tlb_entry()
202 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, ASID, csr_asid); in fill_tlb_entry()
204 tlb->tlb_entry0 = lo0; in fill_tlb_entry()
205 tlb->tlb_entry1 = lo1; in fill_tlb_entry()
238 LoongArchTLB *tlb; in helper_tlbrd() local
243 tlb = &env->tlb[index]; in helper_tlbrd()
246 tlb_ps = FIELD_EX64(tlb->tlb_misc, TLB_MISC, PS); in helper_tlbrd()
250 tlb_e = FIELD_EX64(tlb->tlb_misc, TLB_MISC, E); in helper_tlbrd()
265 env->CSR_TLBEHI = FIELD_EX64(tlb->tlb_misc, TLB_MISC, VPPN) << in helper_tlbrd()
267 env->CSR_TLBELO0 = tlb->tlb_entry0; in helper_tlbrd()
268 env->CSR_TLBELO1 = tlb->tlb_entry1; in helper_tlbrd()
279 env->tlb[index].tlb_misc = FIELD_DP64(env->tlb[index].tlb_misc, in helper_tlbwr()
325 LoongArchTLB *tlb; in helper_tlbclr() local
335 tlb = &env->tlb[i * 256 + (index % 256)]; in helper_tlbclr()
336 tlb_asid = FIELD_EX64(tlb->tlb_misc, TLB_MISC, ASID); in helper_tlbclr()
337 tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in helper_tlbclr()
339 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 0); in helper_tlbclr()
345 tlb = &env->tlb[i]; in helper_tlbclr()
346 tlb_asid = FIELD_EX64(tlb->tlb_misc, TLB_MISC, ASID); in helper_tlbclr()
347 tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in helper_tlbclr()
349 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 0); in helper_tlbclr()
367 env->tlb[s_idx].tlb_misc = FIELD_DP64(env->tlb[s_idx].tlb_misc, in helper_tlbflush()
373 env->tlb[i].tlb_misc = FIELD_DP64(env->tlb[i].tlb_misc, in helper_tlbflush()
384 env->tlb[i].tlb_misc = FIELD_DP64(env->tlb[i].tlb_misc, in helper_invtlb_all()
393 LoongArchTLB *tlb = &env->tlb[i]; in helper_invtlb_all_g() local
394 uint8_t tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in helper_invtlb_all_g()
397 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 0); in helper_invtlb_all_g()
408 LoongArchTLB *tlb = &env->tlb[i]; in helper_invtlb_all_asid() local
409 uint8_t tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in helper_invtlb_all_asid()
410 uint16_t tlb_asid = FIELD_EX64(tlb->tlb_misc, TLB_MISC, ASID); in helper_invtlb_all_asid()
413 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 0); in helper_invtlb_all_asid()
425 LoongArchTLB *tlb = &env->tlb[i]; in helper_invtlb_page_asid() local
426 uint8_t tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in helper_invtlb_page_asid()
427 uint16_t tlb_asid = FIELD_EX64(tlb->tlb_misc, TLB_MISC, ASID); in helper_invtlb_page_asid()
432 tlb_ps = FIELD_EX64(tlb->tlb_misc, TLB_MISC, PS); in helper_invtlb_page_asid()
436 tlb_vppn = FIELD_EX64(tlb->tlb_misc, TLB_MISC, VPPN); in helper_invtlb_page_asid()
442 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 0); in helper_invtlb_page_asid()
454 LoongArchTLB *tlb = &env->tlb[i]; in helper_invtlb_page_asid_or_g() local
455 uint8_t tlb_g = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, G); in helper_invtlb_page_asid_or_g()
456 uint16_t tlb_asid = FIELD_EX64(tlb->tlb_misc, TLB_MISC, ASID); in helper_invtlb_page_asid_or_g()
461 tlb_ps = FIELD_EX64(tlb->tlb_misc, TLB_MISC, PS); in helper_invtlb_page_asid_or_g()
465 tlb_vppn = FIELD_EX64(tlb->tlb_misc, TLB_MISC, VPPN); in helper_invtlb_page_asid_or_g()
471 tlb->tlb_misc = FIELD_DP64(tlb->tlb_misc, TLB_MISC, E, 0); in helper_invtlb_page_asid_or_g()