Browse Source

Actually refill ITLB on ITLB miss

oops.
pull/40/head
Andrew Waterman 11 years ago
parent
commit
bea283531a
  1. 4
      riscv/mmu.cc

4
riscv/mmu.cc

@ -50,7 +50,9 @@ reg_t mmu_t::translate(reg_t addr, access_type type)
const uint16_t* mmu_t::fetch_slow_path(reg_t addr)
{
reg_t paddr = translate(addr, FETCH);
if (paddr >= memsz)
if (paddr < memsz)
refill_tlb(addr, paddr, FETCH);
else
throw trap_instruction_access_fault(addr);
return (const uint16_t*)(mem + paddr);
}

Loading…
Cancel
Save