diff options
Diffstat (limited to 'src/mem/cache/base.hh')
-rw-r--r-- | src/mem/cache/base.hh | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mem/cache/base.hh b/src/mem/cache/base.hh index cd467c8ad..8e5c18c11 100644 --- a/src/mem/cache/base.hh +++ b/src/mem/cache/base.hh @@ -710,6 +710,18 @@ class BaseCache : public ClockedObject void maintainClusivity(bool from_cache, CacheBlk *blk); /** + * Try to evict the given blocks. If any of them is a transient eviction, + * that is, the block is present in the MSHR queue all evictions are + * cancelled since handling such cases has not been implemented. + * + * @param evict_blks Blocks marked for eviction. + * @param writebacks List for any writebacks that need to be performed. + * @return False if any of the evicted blocks is in transient state. + */ + bool handleEvictions(std::vector<CacheBlk*> &evict_blks, + PacketList &writebacks); + + /** * Handle a fill operation caused by a received packet. * * Populates a cache block and handles all outstanding requests for the |