Deleted Added
sdiff udiff text old ( 13416:d90887d0c889 ) new ( 13422:4ec52da74cd5 )
full compact
1/*
2 * Copyright (c) 2014-2015 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

--- 77 unchanged lines hidden (view full) ---

86 }
87
88 // Calculate prefetches given this access
89 std::vector<AddrPriority> addresses;
90 calculatePrefetch(pkt, addresses);
91
92 // Queue up generated prefetches
93 for (AddrPriority& pf_info : addresses) {
94
95 // Block align prefetch address
96 pf_info.first &= ~(Addr)(blkSize - 1);
97
98 pfIdentified++;
99 DPRINTF(HWPrefetch, "Found a pf candidate addr: %#x, "
100 "inserting into prefetch queue.\n", pf_info.first);
101
102 // Create and insert the request
103 PacketPtr pf_pkt = insert(pf_info, is_secure);
104

--- 21 unchanged lines hidden (view full) ---

126 pfq.pop_front();
127
128 pfIssued++;
129 assert(pkt != nullptr);
130 DPRINTF(HWPrefetch, "Generating prefetch for %#x.\n", pkt->getAddr());
131 return pkt;
132}
133
134std::list<QueuedPrefetcher::DeferredPacket>::const_iterator
135QueuedPrefetcher::inPrefetch(Addr address, bool is_secure) const
136{
137 for (const_iterator dp = pfq.begin(); dp != pfq.end(); dp++) {
138 if ((*dp).pkt->getAddr() == address &&
139 (*dp).pkt->isSecure() == is_secure) return dp;
140 }
141
142 return pfq.end();

--- 137 unchanged lines hidden ---