summaryrefslogtreecommitdiff
path: root/cpu/o3/lsq_unit_impl.hh
diff options
context:
space:
mode:
Diffstat (limited to 'cpu/o3/lsq_unit_impl.hh')
-rw-r--r--cpu/o3/lsq_unit_impl.hh10
1 files changed, 8 insertions, 2 deletions
diff --git a/cpu/o3/lsq_unit_impl.hh b/cpu/o3/lsq_unit_impl.hh
index 7974ddaad..10f2b5572 100644
--- a/cpu/o3/lsq_unit_impl.hh
+++ b/cpu/o3/lsq_unit_impl.hh
@@ -51,12 +51,18 @@ LSQUnit<Impl>::StoreCompletionEvent::process()
//lsqPtr->removeMSHR(lsqPtr->storeQueue[storeIdx].inst->seqNum);
- if (lsqPtr->isSwitchedOut())
+ if (lsqPtr->isSwitchedOut()) {
+ if (wbEvent)
+ delete wbEvent;
+
return;
+ }
lsqPtr->cpu->wakeCPU();
- if (wbEvent)
+ if (wbEvent) {
wbEvent->process();
+ delete wbEvent;
+ }
lsqPtr->completeStore(storeIdx);
}