*
* allocateBufferInternal() function is called in:
* - MSHR allocateWriteBuffer (unchached write forwarded to WriteBuffer);
- * - MSHR allocateMissBuffer (cacheable miss in MSHR queue);
- * - MSHR allocateUncachedReadBuffer (unchached read allocated in MSHR
- * queue)
+ * - MSHR allocateMissBuffer (miss in MSHR queue);
*/
MSHR *allocateBufferInternal(MSHRQueue *mq, Addr addr, int size,
PacketPtr pkt, Tick time, bool requestBus)
MSHR *allocateMissBuffer(PacketPtr pkt, Tick time, bool requestBus)
{
- assert(!pkt->req->isUncacheable());
return allocateBufferInternal(&mshrQueue,
blockAlign(pkt->getAddr()), blkSize,
pkt, time, requestBus);
pkt, time, requestBus);
}
- MSHR *allocateUncachedReadBuffer(PacketPtr pkt, Tick time, bool requestBus)
- {
- assert(pkt->req->isUncacheable());
- assert(pkt->isRead());
- return allocateBufferInternal(&mshrQueue,
- blockAlign(pkt->getAddr()), blkSize,
- pkt, time, requestBus);
- }
-
/**
* Returns true if the cache is blocked for accesses.
*/
pkt->headerDelay;
// Reset the timing of the packet.
pkt->headerDelay = pkt->payloadDelay = 0;
- allocateUncachedReadBuffer(pkt, allocate_rd_buffer_time, true);
+ allocateMissBuffer(pkt, allocate_rd_buffer_time, true);
}
assert(pkt->needsResponse()); // else we should delete it here??
return true;