From 2667f611fb258ffdfb7741521e6dd8aac61f30ea Mon Sep 17 00:00:00 2001 From: Scott Johnson Date: Tue, 23 Aug 2022 10:51:24 -0700 Subject: [PATCH 1/2] Separate variables that contain two different things No reason to use a variable misleadingly named 'paddr' to hold the virtual address. --- riscv/mmu.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/riscv/mmu.h b/riscv/mmu.h index 6f24ec75..db238920 100644 --- a/riscv/mmu.h +++ b/riscv/mmu.h @@ -263,8 +263,8 @@ public: void clean_inval(reg_t addr, bool clean, bool inval) { convert_load_traps_to_store_traps({ - reg_t paddr = addr & ~(blocksz - 1); - paddr = translate(paddr, blocksz, LOAD, 0); + reg_t vaddr = addr & ~(blocksz - 1); + reg_t paddr = translate(vaddr, blocksz, LOAD, 0); if (auto host_addr = sim->addr_to_mem(paddr)) { if (tracer.interested_in_range(paddr, paddr + PGSIZE, LOAD)) tracer.clean_invalidate(paddr, blocksz, clean, inval); From d3cb2470518cfb25ee205269deb060715df3427e Mon Sep 17 00:00:00 2001 From: Scott Johnson Date: Tue, 23 Aug 2022 10:53:00 -0700 Subject: [PATCH 2/2] Constantize variables Because it's always better to do so where possible. --- riscv/mmu.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/riscv/mmu.h b/riscv/mmu.h index db238920..9a93f167 100644 --- a/riscv/mmu.h +++ b/riscv/mmu.h @@ -263,8 +263,8 @@ public: void clean_inval(reg_t addr, bool clean, bool inval) { convert_load_traps_to_store_traps({ - reg_t vaddr = addr & ~(blocksz - 1); - reg_t paddr = translate(vaddr, blocksz, LOAD, 0); + const reg_t vaddr = addr & ~(blocksz - 1); + const reg_t paddr = translate(vaddr, blocksz, LOAD, 0); if (auto host_addr = sim->addr_to_mem(paddr)) { if (tracer.interested_in_range(paddr, paddr + PGSIZE, LOAD)) tracer.clean_invalidate(paddr, blocksz, clean, inval);