summaryrefslogtreecommitdiff
path: root/src/cpu/inorder
diff options
context:
space:
mode:
authorKorey Sewell <ksewell@umich.edu>2010-06-23 18:21:12 -0400
committerKorey Sewell <ksewell@umich.edu>2010-06-23 18:21:12 -0400
commit1f778b3583be6b8166d11cb6d19480aaab3f3539 (patch)
treece5434e2a871601f380bfc45cdea07ccfbbdd74a /src/cpu/inorder
parentdefab3ffd5d2e37215d3f9433dc9fc754a90a9a9 (diff)
downloadgem5-1f778b3583be6b8166d11cb6d19480aaab3f3539.tar.xz
inorder: record load/store trace data
Diffstat (limited to 'src/cpu/inorder')
-rw-r--r--src/cpu/inorder/inorder_dyn_inst.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/cpu/inorder/inorder_dyn_inst.cc b/src/cpu/inorder/inorder_dyn_inst.cc
index 83004fdb8..2fb347506 100644
--- a/src/cpu/inorder/inorder_dyn_inst.cc
+++ b/src/cpu/inorder/inorder_dyn_inst.cc
@@ -614,6 +614,11 @@ template<class T>
inline Fault
InOrderDynInst::read(Addr addr, T &data, unsigned flags)
{
+ if (traceData) {
+ traceData->setAddr(addr);
+ traceData->setData(data);
+ }
+
return cpu->read(this, addr, data, flags);
}
@@ -662,7 +667,11 @@ template<class T>
inline Fault
InOrderDynInst::write(T data, Addr addr, unsigned flags, uint64_t *res)
{
- //memcpy(memData, gtoh(data), sizeof(T));
+ if (traceData) {
+ traceData->setAddr(addr);
+ traceData->setData(data);
+ }
+
storeData = data;
DPRINTF(InOrderDynInst, "[tid:%i]: [sn:%i] Setting store data to %#x.\n",