Lines Matching defs:queue
185 "inserting into prefetch queue.\n", new_pfi.getAddr());
204 // If the queue is empty, attempt first to fill it with requests
205 // from the queue of missing translations
237 .desc("number of redundant prefetches already in prefetch queue");
245 .desc("number of prefetches dropped due to prefetch queue size");
306 QueuedPrefetcher::alreadyInQueue(std::list<DeferredPacket> &queue,
311 for (it = queue.begin(); it != queue.end() && !found; it++) {
315 /* If the address is already in the queue, update priority and leave */
316 if (it != queue.end()) {
319 /* Update priority value and position in the queue */
322 while (prev != queue.begin()) {
331 "prefetch queue, priority updated\n");
334 "prefetch queue\n");
371 * deferred packet to the queue of pending translations
450 QueuedPrefetcher::addToQueue(std::list<DeferredPacket> &queue,
454 if (queue.size() == queueSize) {
457 iterator it = queue.end();
458 panic_if (it == queue.begin(),
459 "Prefetch queue is both full and empty!");
462 panic_if (it == queue.begin(),
463 "Prefetch queue is full with 1 element!");
466 /* While not at the head of the queue */
467 while (cont && prev != queue.begin()) {
475 DPRINTF(HWPrefetch, "Prefetch queue full, removing lowest priority "
478 queue.erase(it);
481 if (queue.size() == 0) {
482 queue.emplace_back(dpp);
484 iterator it = queue.end();
487 } while (it != queue.begin() && dpp > *it);
490 if (it == queue.begin() && dpp <= *it)
492 queue.insert(it, dpp);