void TaggedPrefetcher::processAck(PAddr addr) { uint paddr = addr & defaultMask; penFetchSet::iterator itF = pendingFetches.find(paddr); if(itF == pendingFetches.end()) return; bLine *l = buff->fillLine(paddr); penReqMapper::iterator it = pendingRequests.find(paddr); if(it != pendingRequests.end()) { LOG("NLAP: returnAccess [%08lx]", paddr); std::queue<MemRequest *> *tmpReqQueue; tmpReqQueue = (*it).second; while (tmpReqQueue->size()) { tmpReqQueue->front()->goUpAbs(nextBuffSlot()); tmpReqQueue->pop(); } pendingRequests.erase(paddr); activeMemReqPool.in(tmpReqQueue); } pendingFetches.erase(paddr); }
void TestMessage::garbageCollect() { refCount--; if (refCount == 0) { LOG("destroying TestMessage"); tmpool.in(this); } }
void garbageCollect() { msgPool.in(this); }