diff options
author | Steve Reinhardt <stever@gmail.com> | 2008-02-16 14:58:03 -0500 |
---|---|---|
committer | Steve Reinhardt <stever@gmail.com> | 2008-02-16 14:58:03 -0500 |
commit | 4597a71cef808969c442fca73ae662efe75550d7 (patch) | |
tree | f674856f086d7fea06df0fb7767a5cc615c3bed5 /src/mem/cache/cache.hh | |
parent | 69ce7f953b96834ec52d3340f375317ac5858b43 (diff) | |
download | gem5-4597a71cef808969c442fca73ae662efe75550d7.tar.xz |
Make L2+ caches allocate new block for writeback misses
instead of forwarding down the line.
--HG--
extra : convert_revision : b0d6e7862c92ea7a2d21f817d30398735e7bb8ba
Diffstat (limited to 'src/mem/cache/cache.hh')
-rw-r--r-- | src/mem/cache/cache.hh | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mem/cache/cache.hh b/src/mem/cache/cache.hh index 073ce5ecb..6f5428c13 100644 --- a/src/mem/cache/cache.hh +++ b/src/mem/cache/cache.hh @@ -170,6 +170,14 @@ class Cache : public BaseCache void cmpAndSwap(BlkType *blk, PacketPtr pkt); /** + * Find a block frame for new block at address addr, assuming that + * the block is not currently in the cache. Append writebacks if + * any to provided packet list. Return free block frame. May + * return NULL if there are no replaceable blocks at the moment. + */ + BlkType *allocateBlock(Addr addr, PacketList &writebacks); + + /** * Populates a cache block and handles all outstanding requests for the * satisfied fill request. This version takes two memory requests. One * contains the fill data, the other is an optional target to satisfy. |