Lines Matching refs:full

890 static void tlb_reset_dirty_range_locked(CPUTLBEntryFull *full, CPUTLBEntry *ent,  in tlb_reset_dirty_range_locked()  argument
894 int flags = addr | full->slow_flags[MMU_DATA_STORE]; in tlb_reset_dirty_range_locked()
999 static inline void tlb_set_compare(CPUTLBEntryFull *full, CPUTLBEntry *ent, in tlb_set_compare() argument
1014 full->slow_flags[access_type] = flags; in tlb_set_compare()
1026 vaddr addr, CPUTLBEntryFull *full) in tlb_set_page_full() argument
1041 if (full->lg_page_size <= TARGET_PAGE_BITS) { in tlb_set_page_full()
1044 sz = (hwaddr)1 << full->lg_page_size; in tlb_set_page_full()
1048 paddr_page = full->phys_addr & TARGET_PAGE_MASK; in tlb_set_page_full()
1050 prot = full->prot; in tlb_set_page_full()
1051 asidx = cpu_asidx_from_attrs(cpu, full->attrs); in tlb_set_page_full()
1053 &xlat, &sz, full->attrs, &prot); in tlb_set_page_full()
1058 addr, full->phys_addr, prot, mmu_idx); in tlb_set_page_full()
1060 read_flags = full->tlb_fill_flags; in tlb_set_page_full()
1061 if (full->lg_page_size < TARGET_PAGE_BITS) { in tlb_set_page_full()
1156 desc->fulltlb[index] = *full; in tlb_set_page_full()
1157 full = &desc->fulltlb[index]; in tlb_set_page_full()
1158 full->xlat_section = iotlb - addr_page; in tlb_set_page_full()
1159 full->phys_addr = paddr_page; in tlb_set_page_full()
1164 tlb_set_compare(full, &tn, addr_page, read_flags, in tlb_set_page_full()
1170 tlb_set_compare(full, &tn, addr_page, read_flags, in tlb_set_page_full()
1179 tlb_set_compare(full, &tn, addr_page, write_flags, in tlb_set_page_full()
1191 CPUTLBEntryFull full = { in tlb_set_page_with_attrs() local
1199 tlb_set_page_full(cpu, mmu_idx, addr, &full); in tlb_set_page_with_attrs()
1244 CPUTLBEntryFull full; in tlb_fill_align() local
1247 if (ops->tlb_fill_align(cpu, &full, addr, type, mmu_idx, in tlb_fill_align()
1249 tlb_set_page_full(cpu, mmu_idx, addr, &full); in tlb_fill_align()
1291 static void io_failed(CPUState *cpu, CPUTLBEntryFull *full, vaddr addr, in io_failed() argument
1297 hwaddr physaddr = full->phys_addr | (addr & ~TARGET_PAGE_MASK); in io_failed()
1301 full->attrs, response, retaddr); in io_failed()
1338 CPUTLBEntryFull *full, uintptr_t retaddr) in notdirty_write() argument
1340 ram_addr_t ram_addr = mem_vaddr + full->xlat_section; in notdirty_write()
1373 CPUTLBEntryFull *full; in probe_access_internal() local
1400 *pfull = full = &cpu->neg.tlb.d[mmu_idx].fulltlb[index]; in probe_access_internal()
1401 flags |= full->slow_flags[access_type]; in probe_access_internal()
1462 CPUTLBEntryFull *full; in probe_access_flags() local
1468 mmu_idx, nonfault, phost, &full, retaddr, in probe_access_flags()
1474 notdirty_write(env_cpu(env), addr, dirtysize, full, retaddr); in probe_access_flags()
1484 CPUTLBEntryFull *full; in probe_access() local
1491 mmu_idx, false, &host, &full, retaddr, in probe_access()
1505 full->attrs, wp_access, retaddr); in probe_access()
1510 notdirty_write(env_cpu(env), addr, size, full, retaddr); in probe_access()
1520 CPUTLBEntryFull *full; in tlb_vaddr_to_host() local
1525 mmu_idx, true, &host, &full, 0, false); in tlb_vaddr_to_host()
1544 CPUTLBEntryFull *full; in get_page_addr_code_hostp() local
1549 &p, &full, 0, false); in get_page_addr_code_hostp()
1554 if (full->lg_page_size < TARGET_PAGE_BITS) { in get_page_addr_code_hostp()
1586 CPUTLBEntryFull *full; in tlb_plugin_lookup() local
1592 full = &cpu->neg.tlb.d[mmu_idx].fulltlb[index]; in tlb_plugin_lookup()
1593 data->phys_addr = full->phys_addr | (addr & ~TARGET_PAGE_MASK); in tlb_plugin_lookup()
1598 iotlb_to_section(cpu, full->xlat_section & ~TARGET_PAGE_MASK, in tlb_plugin_lookup()
1599 full->attrs); in tlb_plugin_lookup()
1616 CPUTLBEntryFull *full; member
1651 CPUTLBEntryFull *full; in mmu_lookup1() local
1667 full = &cpu->neg.tlb.d[mmu_idx].fulltlb[index]; in mmu_lookup1()
1669 flags |= full->slow_flags[access_type]; in mmu_lookup1()
1690 data->full = full; in mmu_lookup1()
1711 CPUTLBEntryFull *full = data->full; in mmu_watch_or_dirty() local
1719 cpu_check_watchpoint(cpu, addr, size, full->attrs, wp, ra); in mmu_watch_or_dirty()
1725 notdirty_write(cpu, addr, size, full, ra); in mmu_watch_or_dirty()
1786 l->page[0].full = &cpu->neg.tlb.d[l->mmu_idx].fulltlb[index]; in mmu_lookup()
1819 CPUTLBEntryFull *full; in atomic_mmu_lookup() local
1878 full = &cpu->neg.tlb.d[mmu_idx].fulltlb[index]; in atomic_mmu_lookup()
1881 tlb_addr |= full->slow_flags[MMU_DATA_STORE]; in atomic_mmu_lookup()
1882 tlb_addr |= full->slow_flags[MMU_DATA_LOAD]; in atomic_mmu_lookup()
1894 notdirty_write(cpu, addr, size, full, retaddr); in atomic_mmu_lookup()
1900 if (full->slow_flags[MMU_DATA_STORE] & TLB_WATCHPOINT) { in atomic_mmu_lookup()
1903 if (full->slow_flags[MMU_DATA_LOAD] & TLB_WATCHPOINT) { in atomic_mmu_lookup()
1907 full->attrs, wp_flags, retaddr); in atomic_mmu_lookup()
1947 static uint64_t int_ld_mmio_beN(CPUState *cpu, CPUTLBEntryFull *full, in int_ld_mmio_beN() argument
1964 this_mop, full->attrs); in int_ld_mmio_beN()
1966 io_failed(cpu, full, addr, this_size, type, mmu_idx, r, ra); in int_ld_mmio_beN()
1981 static uint64_t do_ld_mmio_beN(CPUState *cpu, CPUTLBEntryFull *full, in do_ld_mmio_beN() argument
1992 attrs = full->attrs; in do_ld_mmio_beN()
1993 section = io_prepare(&mr_offset, cpu, full->xlat_section, attrs, addr, ra); in do_ld_mmio_beN()
1997 return int_ld_mmio_beN(cpu, full, ret_be, addr, size, mmu_idx, in do_ld_mmio_beN()
2001 static Int128 do_ld16_mmio_beN(CPUState *cpu, CPUTLBEntryFull *full, in do_ld16_mmio_beN() argument
2013 attrs = full->attrs; in do_ld16_mmio_beN()
2014 section = io_prepare(&mr_offset, cpu, full->xlat_section, attrs, addr, ra); in do_ld16_mmio_beN()
2018 a = int_ld_mmio_beN(cpu, full, ret_be, addr, size - 8, mmu_idx, in do_ld16_mmio_beN()
2020 b = int_ld_mmio_beN(cpu, full, ret_be, addr + size - 8, 8, mmu_idx, in do_ld16_mmio_beN()
2167 return do_ld_mmio_beN(cpu, p->full, ret_be, p->addr, p->size, in do_ld_beN()
2217 return do_ld16_mmio_beN(cpu, p->full, a, p->addr, size, mmu_idx, ra); in do_ld16_beN()
2262 return do_ld_mmio_beN(cpu, p->full, 0, p->addr, 1, mmu_idx, type, ra); in do_ld_1()
2274 ret = do_ld_mmio_beN(cpu, p->full, 0, p->addr, 2, mmu_idx, type, ra); in do_ld_2()
2294 ret = do_ld_mmio_beN(cpu, p->full, 0, p->addr, 4, mmu_idx, type, ra); in do_ld_4()
2314 ret = do_ld_mmio_beN(cpu, p->full, 0, p->addr, 8, mmu_idx, type, ra); in do_ld_8()
2421 ret = do_ld16_mmio_beN(cpu, l.page[0].full, 0, addr, 16, in do_ld16_mmu()
2488 static uint64_t int_st_mmio_leN(CPUState *cpu, CPUTLBEntryFull *full, in int_st_mmio_leN() argument
2504 this_mop, full->attrs); in int_st_mmio_leN()
2506 io_failed(cpu, full, addr, this_size, MMU_DATA_STORE, in int_st_mmio_leN()
2522 static uint64_t do_st_mmio_leN(CPUState *cpu, CPUTLBEntryFull *full, in do_st_mmio_leN() argument
2533 attrs = full->attrs; in do_st_mmio_leN()
2534 section = io_prepare(&mr_offset, cpu, full->xlat_section, attrs, addr, ra); in do_st_mmio_leN()
2538 return int_st_mmio_leN(cpu, full, val_le, addr, size, mmu_idx, in do_st_mmio_leN()
2542 static uint64_t do_st16_mmio_leN(CPUState *cpu, CPUTLBEntryFull *full, in do_st16_mmio_leN() argument
2553 attrs = full->attrs; in do_st16_mmio_leN()
2554 section = io_prepare(&mr_offset, cpu, full->xlat_section, attrs, addr, ra); in do_st16_mmio_leN()
2558 int_st_mmio_leN(cpu, full, int128_getlo(val_le), addr, 8, in do_st16_mmio_leN()
2560 return int_st_mmio_leN(cpu, full, int128_gethi(val_le), addr + 8, in do_st16_mmio_leN()
2575 return do_st_mmio_leN(cpu, p->full, val_le, p->addr, in do_st_leN()
2629 return do_st16_mmio_leN(cpu, p->full, val_le, p->addr, in do_st16_leN()
2674 do_st_mmio_leN(cpu, p->full, val, p->addr, 1, mmu_idx, ra); in do_st_1()
2689 do_st_mmio_leN(cpu, p->full, val, p->addr, 2, mmu_idx, ra); in do_st_2()
2708 do_st_mmio_leN(cpu, p->full, val, p->addr, 4, mmu_idx, ra); in do_st_4()
2727 do_st_mmio_leN(cpu, p->full, val, p->addr, 8, mmu_idx, ra); in do_st_8()
2832 do_st16_mmio_leN(cpu, l.page[0].full, val, addr, 16, l.mmu_idx, ra); in do_st16_mmu()