diff options
author | Andrew Waterman <andrew@sifive.com> | 2024-08-27 16:55:43 -0700 |
---|---|---|
committer | Andrew Waterman <andrew@sifive.com> | 2024-08-27 16:55:43 -0700 |
commit | 16870946ed32d79b1eb4597d9266194b3b543c3f (patch) | |
tree | ec00ccfb1f3ea91b086bd192ea95e4061c0ef652 | |
parent | eb85c33899ea06a7011d857375282926243442dd (diff) | |
download | riscv-isa-sim-16870946ed32d79b1eb4597d9266194b3b543c3f.zip riscv-isa-sim-16870946ed32d79b1eb4597d9266194b3b543c3f.tar.gz riscv-isa-sim-16870946ed32d79b1eb4597d9266194b3b543c3f.tar.bz2 |
Use create_mem_region for legacy -m argument
-rw-r--r-- | spike_main/spike.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/spike_main/spike.cc b/spike_main/spike.cc index 14b02e7..4c09ac3 100644 --- a/spike_main/spike.cc +++ b/spike_main/spike.cc @@ -240,9 +240,9 @@ static std::vector<mem_cfg_t> parse_mem_layout(const char* arg) auto mb = strtoull(arg, &p, 0); if (*p == 0) { reg_t size = reg_t(mb) << 20; - if (size != (size_t)size) - throw std::runtime_error("Size would overflow size_t"); - res.push_back(mem_cfg_t(reg_t(DRAM_BASE), size)); + if ((size >> 20) != mb) + throw std::runtime_error("Memory size too large"); + res.push_back(create_mem_region(DRAM_BASE, size)); return res; } |