From 4ce0b5aef17804ea8534a9d6d958d91f0c574f93 Mon Sep 17 00:00:00 2001 From: Rupert Swarbrick Date: Wed, 16 Mar 2022 12:16:14 +0000 Subject: Fold isa parameter into cfg_t --- spike_main/spike.cc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'spike_main') diff --git a/spike_main/spike.cc b/spike_main/spike.cc index a9849db..70a1012 100644 --- a/spike_main/spike.cc +++ b/spike_main/spike.cc @@ -232,7 +232,6 @@ int main(int argc, char** argv) const char *log_path = nullptr; std::vector> extensions; const char* initrd = NULL; - const char* isa = DEFAULT_ISA; const char* priv = DEFAULT_PRIV; const char* varch = DEFAULT_VARCH; const char* dtb_file = NULL; @@ -253,7 +252,8 @@ int main(int argc, char** argv) std::vector hartids; cfg_t cfg(/*default_initrd_bounds=*/std::make_pair((reg_t)0, (reg_t)0), /*default_bootargs=*/nullptr, - /*default_nprocs=*/1); + /*default_nprocs=*/1, + /*default_isa=*/DEFAULT_ISA); auto const hartids_parser = [&](const char *s) { std::string const str(s); @@ -330,7 +330,7 @@ int main(int argc, char** argv) parser.option(0, "dc", 1, [&](const char* s){dc.reset(new dcache_sim_t(s));}); parser.option(0, "l2", 1, [&](const char* s){l2.reset(cache_sim_t::construct(s, "L2$"));}); parser.option(0, "log-cache-miss", 0, [&](const char* s){log_cache = true;}); - parser.option(0, "isa", 1, [&](const char* s){isa = s;}); + parser.option(0, "isa", 1, [&](const char* s){cfg.isa = s;}); parser.option(0, "priv", 1, [&](const char* s){priv = s;}); parser.option(0, "varch", 1, [&](const char* s){varch = s;}); parser.option(0, "device", 1, device_parser); @@ -395,6 +395,7 @@ int main(int argc, char** argv) help(); if (kernel && check_file_exists(kernel)) { + const char *isa = cfg.isa(); kernel_size = get_file_size(kernel); if (isa[2] == '6' && isa[3] == '4') kernel_offset = 0x200000; @@ -444,7 +445,7 @@ int main(int argc, char** argv) } #endif - sim_t s(&cfg, isa, priv, varch, halted, real_time_clint, + sim_t s(&cfg, priv, varch, halted, real_time_clint, start_pc, mems, plugin_devices, htif_args, std::move(hartids), dm_config, log_path, dtb_enabled, dtb_file, #ifdef HAVE_BOOST_ASIO -- cgit v1.1