aboutsummaryrefslogtreecommitdiff
path: root/riscv/sim.cc
diff options
context:
space:
mode:
authorChih-Min Chao <48193236+chihminchao@users.noreply.github.com>2021-01-21 14:30:36 +0800
committerGitHub <noreply@github.com>2021-01-20 22:30:36 -0800
commit5b51752cea5c44916c16731c09985f48e89316b9 (patch)
tree41fadc7c20b546a49a6a2cc49dbe7e7ae59e8518 /riscv/sim.cc
parent9bfb43c668848a4850d5805b9adb8ad18e7f43b6 (diff)
downloadspike-5b51752cea5c44916c16731c09985f48e89316b9.zip
spike-5b51752cea5c44916c16731c09985f48e89316b9.tar.gz
spike-5b51752cea5c44916c16731c09985f48e89316b9.tar.bz2
add support to page on demand (#634)
This patch splites the target-requested memory regions into pages and only allocates host memory when it is accessed to reduce larget memory sceniaro in 64 bit target system Co-authored-by: Dave.Wen <dave.wen@sifive.com>
Diffstat (limited to 'riscv/sim.cc')
-rw-r--r--riscv/sim.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/riscv/sim.cc b/riscv/sim.cc
index 5fff0ed..73d2b45 100644
--- a/riscv/sim.cc
+++ b/riscv/sim.cc
@@ -353,7 +353,7 @@ char* sim_t::addr_to_mem(reg_t addr) {
auto desc = bus.find_device(addr);
if (auto mem = dynamic_cast<mem_t*>(desc.second))
if (addr - desc.first < mem->size())
- return mem->contents() + (addr - desc.first);
+ return mem->contents(addr);
return NULL;
}