diff options
Diffstat (limited to 'src/mem/cache/base.hh')
-rw-r--r-- | src/mem/cache/base.hh | 66 |
1 files changed, 2 insertions, 64 deletions
diff --git a/src/mem/cache/base.hh b/src/mem/cache/base.hh index aacf09afb..04225c12f 100644 --- a/src/mem/cache/base.hh +++ b/src/mem/cache/base.hh @@ -1108,19 +1108,15 @@ class BaseCache : public MemObject /** * Cache block visitor that writes back dirty cache blocks using * functional writes. - * - * @return Always returns true. */ - bool writebackVisitor(CacheBlk &blk); + void writebackVisitor(CacheBlk &blk); /** * Cache block visitor that invalidates all blocks in the cache. * * @warn Dirty cache lines will not be written back to memory. - * - * @return Always returns true. */ - bool invalidateVisitor(CacheBlk &blk); + void invalidateVisitor(CacheBlk &blk); /** * Take an MSHR, turn it into a suitable downstream packet, and @@ -1152,62 +1148,4 @@ class BaseCache : public MemObject }; -/** - * Wrap a method and present it as a cache block visitor. - * - * For example the forEachBlk method in the tag arrays expects a - * callable object/function as their parameter. This class wraps a - * method in an object and presents callable object that adheres to - * the cache block visitor protocol. - */ -class CacheBlkVisitorWrapper : public CacheBlkVisitor -{ - public: - typedef bool (BaseCache::*VisitorPtr)(CacheBlk &blk); - - CacheBlkVisitorWrapper(BaseCache &_cache, VisitorPtr _visitor) - : cache(_cache), visitor(_visitor) {} - - bool operator()(CacheBlk &blk) override { - return (cache.*visitor)(blk); - } - - private: - BaseCache &cache; - VisitorPtr visitor; -}; - -/** - * Cache block visitor that determines if there are dirty blocks in a - * cache. - * - * Use with the forEachBlk method in the tag array to determine if the - * array contains dirty blocks. - */ -class CacheBlkIsDirtyVisitor : public CacheBlkVisitor -{ - public: - CacheBlkIsDirtyVisitor() - : _isDirty(false) {} - - bool operator()(CacheBlk &blk) override { - if (blk.isDirty()) { - _isDirty = true; - return false; - } else { - return true; - } - } - - /** - * Does the array contain a dirty line? - * - * @return true if yes, false otherwise. - */ - bool isDirty() const { return _isDirty; }; - - private: - bool _isDirty; -}; - #endif //__MEM_CACHE_BASE_HH__ |