summaryrefslogtreecommitdiff
path: root/src/cpu/inteltrace.hh
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2009-01-06 22:34:18 -0800
committerGabe Black <gblack@eecs.umich.edu>2009-01-06 22:34:18 -0800
commitb0ab5c894d84d4522cae3a254158e47ba112909c (patch)
tree6b4992716c89628ae0860e12d0567b61e4280160 /src/cpu/inteltrace.hh
parent2adc60795b0e21d46f983293b3b71b48ee105c14 (diff)
downloadgem5-b0ab5c894d84d4522cae3a254158e47ba112909c.tar.xz
Tracing: Make tracing aware of macro and micro ops.
Diffstat (limited to 'src/cpu/inteltrace.hh')
-rw-r--r--src/cpu/inteltrace.hh11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/cpu/inteltrace.hh b/src/cpu/inteltrace.hh
index 5d5bcda8e..e34658b58 100644
--- a/src/cpu/inteltrace.hh
+++ b/src/cpu/inteltrace.hh
@@ -47,8 +47,10 @@ class IntelTraceRecord : public InstRecord
{
public:
IntelTraceRecord(Tick _when, ThreadContext *_thread,
- const StaticInstPtr &_staticInst, Addr _pc, bool spec)
- : InstRecord(_when, _thread, _staticInst, _pc, spec)
+ const StaticInstPtr _staticInst, Addr _pc, bool spec,
+ const StaticInstPtr _macroStaticInst = NULL, MicroPC _upc = 0)
+ : InstRecord(_when, _thread, _staticInst, _pc, spec,
+ _macroStaticInst, _upc)
{
}
@@ -64,7 +66,8 @@ class IntelTrace : public InstTracer
IntelTraceRecord *
getInstRecord(Tick when, ThreadContext *tc,
- const StaticInstPtr staticInst, Addr pc)
+ const StaticInstPtr staticInst, Addr pc,
+ const StaticInstPtr macroStaticInst = NULL, MicroPC upc = 0)
{
if (!IsOn(ExecEnable))
return NULL;
@@ -76,7 +79,7 @@ class IntelTrace : public InstTracer
return NULL;
return new IntelTraceRecord(when, tc,
- staticInst, pc, tc->misspeculating());
+ staticInst, pc, tc->misspeculating(), macroStaticInst, upc);
}
};