diff options
author | Andrew Waterman <andrew@sifive.com> | 2019-11-13 05:22:18 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-13 05:22:18 -0800 |
commit | 2704790df5d16868571bacf4c521df4bac87f452 (patch) | |
tree | 5b80d59e0eb989d491f2c7db46a1a960e8236e67 /riscv/sim.cc | |
parent | ff81dea8593c6e51b45e7bed230a2cafd56e4caf (diff) | |
parent | 86857aa3511d0a3bb1d28f8a6213013382545f77 (diff) | |
download | spike-2704790df5d16868571bacf4c521df4bac87f452.zip spike-2704790df5d16868571bacf4c521df4bac87f452.tar.gz spike-2704790df5d16868571bacf4c521df4bac87f452.tar.bz2 |
Merge pull request #356 from riscv/priv-flag
Add --priv command-line option to set which privilege modes are available
Diffstat (limited to 'riscv/sim.cc')
-rw-r--r-- | riscv/sim.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/riscv/sim.cc b/riscv/sim.cc index eca7057..7d6f3c1 100644 --- a/riscv/sim.cc +++ b/riscv/sim.cc @@ -25,7 +25,8 @@ static void handle_signal(int sig) signal(sig, &handle_signal); } -sim_t::sim_t(const char* isa, const char* varch, size_t nprocs, bool halted, +sim_t::sim_t(const char* isa, const char* priv, const char* varch, + size_t nprocs, bool halted, reg_t start_pc, std::vector<std::pair<reg_t, mem_t*>> mems, std::vector<std::pair<reg_t, abstract_device_t*>> plugin_devices, const std::vector<std::string>& args, @@ -51,7 +52,7 @@ sim_t::sim_t(const char* isa, const char* varch, size_t nprocs, bool halted, if (hartids.size() == 0) { for (size_t i = 0; i < procs.size(); i++) { - procs[i] = new processor_t(isa, varch, this, i, halted); + procs[i] = new processor_t(isa, priv, varch, this, i, halted); } } else { @@ -60,7 +61,7 @@ sim_t::sim_t(const char* isa, const char* varch, size_t nprocs, bool halted, exit(1); } for (size_t i = 0; i < procs.size(); i++) { - procs[i] = new processor_t(isa, varch, this, hartids[i], halted); + procs[i] = new processor_t(isa, priv, varch, this, hartids[i], halted); } } |