summaryrefslogtreecommitdiff
path: root/src/sim/insttracer.hh
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2009-07-19 23:54:31 -0700
committerGabe Black <gblack@eecs.umich.edu>2009-07-19 23:54:31 -0700
commita3a795769a2590451731f683ba11110f4035ab6b (patch)
treed1be4b8fe5a11f16c15249f7bbcfd7d843c66a4b /src/sim/insttracer.hh
parentf0cb698a8744f19e1b3d87f690190c9defa0654f (diff)
downloadgem5-a3a795769a2590451731f683ba11110f4035ab6b.tar.xz
Tracing: Add accessors so tracers can get at data in trace records.
Diffstat (limited to 'src/sim/insttracer.hh')
-rw-r--r--src/sim/insttracer.hh22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/sim/insttracer.hh b/src/sim/insttracer.hh
index bcab45519..a8cdff671 100644
--- a/src/sim/insttracer.hh
+++ b/src/sim/insttracer.hh
@@ -129,6 +129,28 @@ class InstRecord
{ cp_seq = seq; cp_seq_valid = true; }
virtual void dump() = 0;
+
+ public:
+ Tick getWhen() { return when; }
+ ThreadContext *getThread() { return thread; }
+ StaticInstPtr getStaticInst() { return staticInst; }
+ Addr getPC() { return PC; }
+ StaticInstPtr getMacroStaticInst() { return macroStaticInst; }
+ MicroPC getUPC() { return upc; }
+ bool getMisspeculating() { return misspeculating; }
+
+ Addr getAddr() { return addr; }
+ bool getAddrValid() { return addr_valid; }
+
+ uint64_t getIntData() { return data.as_int; }
+ double getFloatData() { return data.as_double; }
+ int getDataStatus() { return data_status; }
+
+ InstSeqNum getFetchSeq() { return fetch_seq; }
+ bool getFetchSeqValid() { return fetch_seq_valid; }
+
+ InstSeqNum getCpSeq() { return cp_seq; }
+ bool getCpSeqValid() { return cp_seq_valid; }
};
class InstTracer : public SimObject