summaryrefslogtreecommitdiff
path: root/inc/stage.h
diff options
context:
space:
mode:
authorSiddarth Suresh <155843085+SiddarthSuresh98@users.noreply.github.com>2025-03-30 21:30:17 -0400
committerGitHub <noreply@github.com>2025-03-30 21:30:17 -0400
commit52e1ca72925444b8e5a9bb5b240a4063a4d7b958 (patch)
treebfd8e383eedbd40f5c9067e04734f62ed6ccab23 /inc/stage.h
parent12a9e93f913c0057f2ef32f5894931c8b4bd3a85 (diff)
parent6a15f66bef28de9e1b982c3adda4d9b75c818852 (diff)
Merge pull request #42 from bdunahu/bdunahu
Add tests for EX, rest of (non-vector) instructions
Diffstat (limited to 'inc/stage.h')
-rw-r--r--inc/stage.h20
1 files changed, 15 insertions, 5 deletions
diff --git a/inc/stage.h b/inc/stage.h
index 56a3589..84d2a7b 100644
--- a/inc/stage.h
+++ b/inc/stage.h
@@ -40,6 +40,21 @@ class Stage
*/
virtual InstrDTO *advance(Response p);
+ /* The following methods are made public so that they may be tested, and are
+ * not to be called from outside classes during standard execution.
+ */
+
+ /**
+ * Gets the bit in the condition code register correspondng to `c`.
+ * @param the condition code to retrieve,
+ */
+ bool get_condition(CC c);
+
+ /**
+ * Sets the value of the PC register.
+ */
+ void set_pc(unsigned int pc);
+
protected:
/**
* The function expected to do the majority of the work.
@@ -54,11 +69,6 @@ class Stage
*/
void set_condition(CC c, bool v);
/**
- * Gets the bit in the condition code register correspondng to `c`.
- * @param the condition code to retrieve,
- */
- bool get_condition(CC c);
- /**
* Helper for `check_out`.
* Returns true if r are not checked out, false otherwise.
* @param a list of register numbers.