From 72900108c92488e4d1d71330e922509212c51c28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Mon, 11 Dec 2017 21:18:47 +0100 Subject: Another but same fix for cache Segfault happening had same cause as previous problem so fix is similar. --- qtmips_machine/machineconfig.cpp | 3 +++ qtmips_machine/qtmipsmachine.cpp | 2 ++ 2 files changed, 5 insertions(+) diff --git a/qtmips_machine/machineconfig.cpp b/qtmips_machine/machineconfig.cpp index 7538765..05624cc 100644 --- a/qtmips_machine/machineconfig.cpp +++ b/qtmips_machine/machineconfig.cpp @@ -3,11 +3,14 @@ MachineConfig::MachineConfig() { pipeline = false; jumppred = false; + cache_type = CCT_NONE; + elf_path = QString(""); } MachineConfig::MachineConfig(MachineConfig *cc) { pipeline = cc->pipelined(); jumppred = cc->jump_prediction(); + cache_type = cc->cache(); elf_path = cc->elf(); } diff --git a/qtmips_machine/qtmipsmachine.cpp b/qtmips_machine/qtmipsmachine.cpp index 3d5ce98..7b44a7b 100644 --- a/qtmips_machine/qtmipsmachine.cpp +++ b/qtmips_machine/qtmipsmachine.cpp @@ -21,6 +21,8 @@ QtMipsMachine::QtMipsMachine(const MachineConfig &cc) { coremem = mem; //coremem = cch = new CacheAssociative(); break; + default: + throw QTMIPS_EXCEPTION(Sanity, "Trying to configure unknown cache type", ""); } // TODO pipelined -- cgit v1.2.3