summaryrefslogtreecommitdiff
path: root/src/cpu/inorder/resources/tlb_unit.hh
diff options
context:
space:
mode:
authorKorey Sewell <ksewell@umich.edu>2009-05-12 15:01:15 -0400
committerKorey Sewell <ksewell@umich.edu>2009-05-12 15:01:15 -0400
commitc9a03f549b63dbf2e6e192bce02c57c48cec05e2 (patch)
treec1328d0f17e4346e04a3ca98958b67f422791388 /src/cpu/inorder/resources/tlb_unit.hh
parent1c7e988272efead94d2cfbe3fd65ba454d3e1fc1 (diff)
downloadgem5-c9a03f549b63dbf2e6e192bce02c57c48cec05e2.tar.xz
inorder-mem: clean up allocation/deletion of requests/packets
* * *
Diffstat (limited to 'src/cpu/inorder/resources/tlb_unit.hh')
-rw-r--r--src/cpu/inorder/resources/tlb_unit.hh17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/cpu/inorder/resources/tlb_unit.hh b/src/cpu/inorder/resources/tlb_unit.hh
index 67e1bda1d..4ca240ba8 100644
--- a/src/cpu/inorder/resources/tlb_unit.hh
+++ b/src/cpu/inorder/resources/tlb_unit.hh
@@ -106,21 +106,22 @@ class TLBUnitRequest : public ResourceRequest {
aligned_addr = inst->getMemAddr();
req_size = sizeof(TheISA::MachInst);
flags = 0;
+ inst->fetchMemReq = new Request(inst->readTid(), aligned_addr, req_size,
+ flags, inst->readPC(), res->cpu->readCpuId(), inst->readTid());
+ memReq = inst->fetchMemReq;
} else {
aligned_addr = inst->getMemAddr();;
req_size = inst->getMemAccSize();
flags = inst->getMemFlags();
- }
- if (req_size == 0 && (inst->isDataPrefetch() || inst->isInstPrefetch())) {
- req_size = 8;
- }
+ if (req_size == 0 && (inst->isDataPrefetch() || inst->isInstPrefetch())) {
+ req_size = 8;
+ }
- // @TODO: Add Vaddr & Paddr functions
- inst->memReq = new Request(inst->readTid(), aligned_addr, req_size,
+ inst->dataMemReq = new Request(inst->readTid(), aligned_addr, req_size,
flags, inst->readPC(), res->cpu->readCpuId(), inst->readTid());
-
- memReq = inst->memReq;
+ memReq = inst->dataMemReq;
+ }
}
RequestPtr memReq;