Deleted Added
sdiff udiff text old ( 12744:d1ff0b42b747 ) new ( 12745:e28c117a9806 )
full compact
1/*
2 * Copyright (c) 2013,2016-2018 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

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

117 return nullptr;
118}
119
120void
121FALRU::invalidate(CacheBlk *blk)
122{
123 BaseTags::invalidate(blk);
124
125 // Move the block to the tail to make it the next victim
126 moveToTail((FALRUBlk*)blk);
127
128 // Erase block entry in the hash table
129 tagHash.erase(blk->tag);
130}
131
132CacheBlk*

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

164 *in_caches_mask = mask;
165 }
166
167 cacheTracking.recordAccess(blk);
168
169 return blk;
170}
171
172
173CacheBlk*
174FALRU::findBlock(Addr addr, bool is_secure) const
175{
176 Addr tag = extractTag(addr);
177 FALRUBlk* blk = hashLookup(tag);
178
179 if (blk && blk->isValid()) {
180 assert(blk->tag == tag);

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

210 FALRUBlk* falruBlk = static_cast<FALRUBlk*>(blk);
211
212 // Make sure block is not present in the cache
213 assert(falruBlk->inCachesMask == 0);
214
215 // Do common block insertion functionality
216 BaseTags::insertBlock(pkt, blk);
217
218 // New block is the MRU
219 moveToHead(falruBlk);
220
221 // Insert new block in the hash table
222 tagHash[falruBlk->tag] = falruBlk;
223}
224
225void

--- 225 unchanged lines hidden ---