summaryrefslogtreecommitdiff
path: root/src/cpu/base.hh
diff options
context:
space:
mode:
authorGeoffrey Blake <Geoffrey.Blake@arm.com>2016-04-05 05:29:02 -0500
committerGeoffrey Blake <Geoffrey.Blake@arm.com>2016-04-05 05:29:02 -0500
commitf948f9fca987b25ef0716e87fdc4e874fb607c14 (patch)
treee00e191ba53d4e26f84197453a7361d381a33207 /src/cpu/base.hh
parentdf36764e91bc96d731cbd403c3a4527248eb403c (diff)
downloadgem5-f948f9fca987b25ef0716e87fdc4e874fb607c14.tar.xz
cpu: Query CPU for inst executed from Python
This patch adds the ability for the simulator to query the number of instructions a CPU has executed so far per hw-thread. This can be used to enable more flexible periodic events such as taking checkpoints starting 1s into simulation and X instructions thereafter.
Diffstat (limited to 'src/cpu/base.hh')
-rw-r--r--src/cpu/base.hh9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/cpu/base.hh b/src/cpu/base.hh
index 87f27acca..438c38812 100644
--- a/src/cpu/base.hh
+++ b/src/cpu/base.hh
@@ -465,6 +465,15 @@ class BaseCPU : public MemObject
*/
void scheduleLoadStop(ThreadID tid, Counter loads, const char *cause);
+ /**
+ * Get the number of instructions executed by the specified thread
+ * on this CPU. Used by Python to control simulation.
+ *
+ * @param tid Thread monitor
+ * @return Number of instructions executed
+ */
+ uint64_t getCurrentInstCount(ThreadID tid);
+
public:
/**
* @{