From cc5bea608df30263f8d20facfd55d8b6ce15053d Mon Sep 17 00:00:00 2001 From: Blue Swirl Date: Sat, 14 Apr 2012 14:56:48 +0000 Subject: cputlb: prepare private memory API for public consumption Fold is_ram_rom and is_ram_rom_romd() into callers. Change is_romd() and section_addr() to take MemoryRegion instead of MemoryRegionSection for consistency and use memory_region_ prefix. Reviewed-by: Richard Henderson Signed-off-by: Blue Swirl --- cputlb.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'cputlb.c') diff --git a/cputlb.c b/cputlb.c index b7d8f07539..7f40a62223 100644 --- a/cputlb.c +++ b/cputlb.c @@ -260,13 +260,15 @@ void tlb_set_page(CPUArchState *env, target_ulong vaddr, #endif address = vaddr; - if (!is_ram_rom_romd(section)) { + if (!(memory_region_is_ram(section->mr) || + memory_region_is_romd(section->mr))) { /* IO memory case (romd handled later) */ address |= TLB_MMIO; } - if (is_ram_rom_romd(section)) { + if (memory_region_is_ram(section->mr) || + memory_region_is_romd(section->mr)) { addend = (uintptr_t)memory_region_get_ram_ptr(section->mr) - + section_addr(section, paddr); + + memory_region_section_addr(section, paddr); } else { addend = 0; } @@ -292,13 +294,13 @@ void tlb_set_page(CPUArchState *env, target_ulong vaddr, } if (prot & PAGE_WRITE) { if ((memory_region_is_ram(section->mr) && section->readonly) - || is_romd(section)) { + || memory_region_is_romd(section->mr)) { /* Write access calls the I/O callback. */ te->addr_write = address | TLB_MMIO; } else if (memory_region_is_ram(section->mr) && !cpu_physical_memory_is_dirty( section->mr->ram_addr - + section_addr(section, paddr))) { + + memory_region_section_addr(section, paddr))) { te->addr_write = address | TLB_NOTDIRTY; } else { te->addr_write = address; -- cgit v1.2.1