aboutsummaryrefslogtreecommitdiff
path: root/qtmips_machine/machineconfig.cpp
diff options
context:
space:
mode:
authorKarel Kočí <cynerd@email.cz>2017-11-19 21:23:04 +0100
committerKarel Kočí <cynerd@email.cz>2017-11-19 21:23:04 +0100
commitf0ad502e4651243d6a96194b3393bd460c0f7fc9 (patch)
tree4f912c24b5943bd93b5a3378df75f9611de6779b /qtmips_machine/machineconfig.cpp
parent2c6562fa78e884d66b8c2a306f020101e8803f2e (diff)
downloadqtmips-f0ad502e4651243d6a96194b3393bd460c0f7fc9.tar.gz
qtmips-f0ad502e4651243d6a96194b3393bd460c0f7fc9.tar.bz2
qtmips-f0ad502e4651243d6a96194b3393bd460c0f7fc9.zip
Another huge pile of work for about two months
Well I should commit every change instead of this madness. I am not documenting changes as all this is just improvements and implementation progression.
Diffstat (limited to 'qtmips_machine/machineconfig.cpp')
-rw-r--r--qtmips_machine/machineconfig.cpp43
1 files changed, 41 insertions, 2 deletions
diff --git a/qtmips_machine/machineconfig.cpp b/qtmips_machine/machineconfig.cpp
index 8562ab9..f23140f 100644
--- a/qtmips_machine/machineconfig.cpp
+++ b/qtmips_machine/machineconfig.cpp
@@ -1,6 +1,45 @@
#include "machineconfig.h"
-MachineConfig::MachineConfig()
-{
+MachineConfig::MachineConfig() {
+ pipeline = false;
+ jumppred = false;
+}
+
+MachineConfig::MachineConfig(MachineConfig *cc) {
+ pipeline = cc->pipelined();
+ jumppred = cc->jump_prediction();
+}
+
+void MachineConfig::set_pipelined(bool v) {
+ pipeline = v;
+}
+
+void MachineConfig::set_jump_prediction(bool v) {
+ jumppred = v;
+ if (jumppred)
+ pipeline = true;
+}
+
+void MachineConfig::set_cache(enum CacheType cc) {
+ cache_type = cc;
+}
+
+void MachineConfig::set_elf(QString path) {
+ elf_path = path;
+}
+
+bool MachineConfig::pipelined() const {
+ return pipeline;
+}
+
+bool MachineConfig::jump_prediction() const {
+ return jumppred;
+}
+
+enum MachineConfig::CacheType MachineConfig::cache() const {
+ return cache_type;
+}
+QString MachineConfig::elf() const {
+ return elf_path;
}