Searched refs:mshr (Results 1 - 9 of 9) sorted by relevance
/gem5/src/mem/cache/ |
H A D | mshr_queue.cc | 52 #include "mem/cache/mshr.hh" 65 MSHR *mshr = freeList.front(); local 66 assert(mshr->getNumTargets() == 0); 69 mshr->allocate(blk_addr, blk_size, pkt, when_ready, order, alloc_on_fill); 70 mshr->allocIter = allocatedList.insert(allocatedList.end(), mshr); 71 mshr->readyIter = addToReadyList(mshr); 74 return mshr; 78 MSHRQueue::moveToFront(MSHR *mshr) argument 88 delay(MSHR *mshr, Tick delay_ticks) argument 99 markInService(MSHR *mshr, bool pending_modified_resp) argument 107 markPending(MSHR *mshr) argument 120 forceDeallocateTarget(MSHR *mshr) argument [all...] |
H A D | mshr_queue.hh | 54 #include "mem/cache/mshr.hh" 67 * Prevent prefetcher from taking all mshr entries 105 * @param mshr The entry to move. 107 void moveToFront(MSHR *mshr); 113 * @param mshr that needs to be delayed 116 void delay(MSHR *mshr, Tick delay_ticks); 122 * @param mshr The MSHR to mark in service. 126 void markInService(MSHR *mshr, bool pending_modified_resp); 130 * @param mshr The MSHR to resend. 132 void markPending(MSHR *mshr); [all...] |
H A D | cache.cc | 68 #include "mem/cache/mshr.hh" 357 MSHR *mshr = mshrQueue.findMatch(blk_addr, pkt->isSecure()); local 379 if (!mshr) { 402 BaseCache::handleTimingReqMiss(pkt, mshr, blk, forward_time, request_time); 689 Cache::serviceMSHRTargets(MSHR *mshr, const PacketPtr pkt, CacheBlk *blk) argument 691 QueueEntry::Target *initial_tgt = mshr->getTarget(); 699 !mshr->wasWholeLineWrite; 701 MSHR::TargetList targets = mshr->extractServiceableTargets(pkt); 759 if (blk && blk->isValid() && !mshr->isForward) { 760 satisfyRequest(tgt_pkt, blk, true, mshr 1197 MSHR *mshr = mshrQueue.findMatch(blk_addr, is_secure); local 1343 sendMSHRQueuePacket(MSHR* mshr) argument [all...] |
H A D | noncoherent_cache.cc | 64 #include "mem/cache/mshr.hh" 127 MSHR *mshr = mshrQueue.findMatch(blk_addr, pkt->isSecure(), false); local 132 assert(mshr || !blk || !blk->isValid()); 134 BaseCache::handleTimingReqMiss(pkt, mshr, blk, forward_time, request_time); 245 NoncoherentCache::serviceMSHRTargets(MSHR *mshr, const PacketPtr pkt, argument 249 const int initial_offset = mshr->getTarget()->pkt->getOffset(blkSize); 251 MSHR::TargetList targets = mshr->extractServiceableTargets(pkt); 316 assert(mshr->getNumTargets() == 0);
|
H A D | cache.hh | 106 void serviceMSHRTargets(MSHR *mshr, const PacketPtr pkt, 171 * @param mshr The MSHR to turn into a packet and send 174 bool sendMSHRQueuePacket(MSHR* mshr) override;
|
H A D | noncoherent_cache.hh | 88 void serviceMSHRTargets(MSHR *mshr, const PacketPtr pkt,
|
H A D | mshr.cc | 51 #include "mem/cache/mshr.hh" 124 MSHR *mshr = pkt->findNextSenderState<MSHR>(); local 125 if (mshr != nullptr) { 126 assert(!mshr->downstreamPending); 127 mshr->downstreamPending = true; 196 MSHR *mshr = t->pkt->findNextSenderState<MSHR>(); local 197 if (mshr != nullptr) { 198 mshr->clearDownstreamPending();
|
H A D | base.cc | 59 #include "mem/cache/mshr.hh" 241 BaseCache::handleTimingReqMiss(PacketPtr pkt, MSHR *mshr, CacheBlk *blk, argument 250 if (mshr) { 285 mshr->allocateTarget(pkt, forward_time, order++, 287 if (mshr->getNumTargets() == numTarget) { 288 noTargetMSHR = mshr; 290 // need to be careful with this... if this mshr isn't 293 // mshrQueue.moveToFront(mshr); 433 MSHR *mshr = dynamic_cast<MSHR*>(pkt->popSenderState()); local 434 assert(mshr); 629 MSHR *mshr = mshrQueue.findMatch(blk_addr, is_secure); local [all...] |
H A D | base.hh | 375 void markInService(MSHR *mshr, bool pending_modified_resp) argument 378 mshrQueue.markInService(mshr, pending_modified_resp); 493 * @param mshr Any existing mshr for the referenced cache block 497 void handleTimingReqMiss(PacketPtr pkt, MSHR *mshr, CacheBlk *blk, 518 * @param mshr The MSHR that corresponds to the reponse 522 virtual void serviceMSHRTargets(MSHR *mshr, const PacketPtr pkt, 1073 MSHR *mshr = mshrQueue.allocate(pkt->getBlockAddr(blkSize), blkSize, local 1086 return mshr; 1238 * @param mshr Th [all...] |
Completed in 21 milliseconds