first pass at merging m5 with linux
[gem5.git] / arch / alpha / vtophys.cc
index 784c4af7e94d42b23572063f97aabc6073068196..d91d80c831f1e9895fb7eebb620b273e0e5d6bff 100644 (file)
@@ -96,20 +96,20 @@ vtophys(ExecContext *xc, Addr vaddr)
 {
     Addr ptbr = xc->regs.ipr[AlphaISA::IPR_PALtemp20];
     Addr paddr = 0;
-    if (PC_PAL(vaddr) || vaddr < 0x10000) {
-        paddr = vaddr & ~ULL(1);
-    } else if (!ptbr) {
-        paddr = vaddr;
-    } else {
+//    if (PC_PAL(vaddr)) {
+//     paddr = vaddr & ~ULL(1);
+//    } else {
         if (vaddr >= ALPHA_K0SEG_BASE && vaddr <= ALPHA_K0SEG_END) {
             paddr = ALPHA_K0SEG_TO_PHYS(vaddr);
+        } else if (!ptbr) {
+            paddr = vaddr;
         } else {
             Addr pte = kernel_pte_lookup(xc->physmem, ptbr, vaddr);
             uint64_t entry = xc->physmem->phys_read_qword(pte);
             if (pte && entry_valid(entry))
                 paddr = PMAP_PTE_PA(entry) | (vaddr & PGOFSET);
         }
-    }
+//    }
 
     DPRINTF(VtoPhys, "vtophys(%#x) -> %#x\n", vaddr, paddr);