arm: Fix timing wakeup with LLSC
This commit is contained in:
parent
7d05895120
commit
b6f32253dd
1 changed files with 6 additions and 6 deletions
|
@ -243,6 +243,12 @@ bool
|
|||
TimingSimpleCPU::handleReadPacket(PacketPtr pkt)
|
||||
{
|
||||
RequestPtr req = pkt->req;
|
||||
|
||||
// We're about the issues a locked load, so tell the monitor
|
||||
// to start caring about this address
|
||||
if (pkt->isRead() && pkt->req->isLLSC()) {
|
||||
TheISA::handleLockedRead(thread, pkt->req);
|
||||
}
|
||||
if (req->isMmappedIpr()) {
|
||||
Cycles delay = TheISA::handleIprRead(thread->getTC(), pkt);
|
||||
new IprEvent(pkt, this, clockEdge(delay));
|
||||
|
@ -792,12 +798,6 @@ TimingSimpleCPU::completeDataAccess(PacketPtr pkt)
|
|||
traceData = NULL;
|
||||
}
|
||||
|
||||
// the locked flag may be cleared on the response packet, so check
|
||||
// pkt->req and not pkt to see if it was a load-locked
|
||||
if (pkt->isRead() && pkt->req->isLLSC()) {
|
||||
TheISA::handleLockedRead(thread, pkt->req);
|
||||
}
|
||||
|
||||
delete pkt->req;
|
||||
delete pkt;
|
||||
|
||||
|
|
Loading…
Reference in a new issue