OSDN Git Service

target-arm: don't hardcode mask values in arm_cpu_handle_mmu_fault
authorAlex Bennée <alex.bennee@linaro.org>
Mon, 4 Aug 2014 13:41:55 +0000 (14:41 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 4 Aug 2014 13:41:55 +0000 (14:41 +0100)
Otherwise we break quickly when we change TARGET_PAGE_SIZE.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1406733627-24255-2-git-send-email-alex.bennee@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target-arm/helper.c

index d709285..35c11e7 100644 (file)
@@ -4156,8 +4156,8 @@ int arm_cpu_handle_mmu_fault(CPUState *cs, vaddr address,
                         &page_size);
     if (ret == 0) {
         /* Map a single [sub]page.  */
-        phys_addr &= ~(hwaddr)0x3ff;
-        address &= ~(target_ulong)0x3ff;
+        phys_addr &= TARGET_PAGE_MASK;
+        address &= TARGET_PAGE_MASK;
         tlb_set_page(cs, address, phys_addr, prot, mmu_idx, page_size);
         return 0;
     }