mem: Remove templates in cache model
authorDavid Guillen <david.guillen@arm.com>
Tue, 5 May 2015 07:22:21 +0000 (03:22 -0400)
committerDavid Guillen <david.guillen@arm.com>
Tue, 5 May 2015 07:22:21 +0000 (03:22 -0400)
commit5287945a8bb98476a9326c5d9c51491cdc7212f2
treec2263df9baa298e151c2fc68c22b9e3439f07edf
parentd0d933facc9085727c12f53de76a2cb879ded4c8
mem: Remove templates in cache model

This patch changes the cache implementation to rely on virtual methods
rather than using the replacement policy as a template argument.

There is no impact on the simulation performance, and overall the
changes make it easier to modify (and subclass) the cache and/or
replacement policy.
14 files changed:
src/mem/cache/base.cc
src/mem/cache/blk.hh
src/mem/cache/cache.cc
src/mem/cache/cache.hh
src/mem/cache/cache_impl.hh
src/mem/cache/tags/base.hh
src/mem/cache/tags/base_set_assoc.cc
src/mem/cache/tags/base_set_assoc.hh
src/mem/cache/tags/fa_lru.cc
src/mem/cache/tags/fa_lru.hh
src/mem/cache/tags/lru.cc
src/mem/cache/tags/lru.hh
src/mem/cache/tags/random_repl.cc
src/mem/cache/tags/random_repl.hh