summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cpu/simple/timing.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/cpu/simple/timing.cc b/src/cpu/simple/timing.cc
index 47f99cd6d..453699f84 100644
--- a/src/cpu/simple/timing.cc
+++ b/src/cpu/simple/timing.cc
@@ -325,26 +325,26 @@ TimingSimpleCPU::sendSplitData(RequestPtr req1, RequestPtr req2,
pkt1->makeResponse();
completeDataAccess(pkt1);
} else if (read) {
+ SplitFragmentSenderState * send_state =
+ dynamic_cast<SplitFragmentSenderState *>(pkt1->senderState);
if (handleReadPacket(pkt1)) {
- SplitFragmentSenderState * send_state =
- dynamic_cast<SplitFragmentSenderState *>(pkt1->senderState);
send_state->clearFromParent();
+ send_state = dynamic_cast<SplitFragmentSenderState *>(
+ pkt2->senderState);
if (handleReadPacket(pkt2)) {
- send_state = dynamic_cast<SplitFragmentSenderState *>(
- pkt1->senderState);
send_state->clearFromParent();
}
}
} else {
dcache_pkt = pkt1;
+ SplitFragmentSenderState * send_state =
+ dynamic_cast<SplitFragmentSenderState *>(pkt1->senderState);
if (handleWritePacket()) {
- SplitFragmentSenderState * send_state =
- dynamic_cast<SplitFragmentSenderState *>(pkt1->senderState);
send_state->clearFromParent();
dcache_pkt = pkt2;
+ send_state = dynamic_cast<SplitFragmentSenderState *>(
+ pkt2->senderState);
if (handleWritePacket()) {
- send_state = dynamic_cast<SplitFragmentSenderState *>(
- pkt1->senderState);
send_state->clearFromParent();
}
}