This series introduces a new cache TCG plugin that models separate
L1 data cache and L1 instruction cache and uses one shared cache for
all the cores. This is a part of my work for GSoC 2021 under the
mentorship of Alex Bennée.
v3 -> v4:
Removed unnecessary includes.
Removed an unused variable `insn_addr` in `vcpu_mem_access()`.
Had a `default` label for switch statement spelt wrong. Fixed that.
typedef'd all structs to reduce the clutter of using the word
`struct` on every declaration (was causing many lines to be +80
characters...)
Separated cache parameters to multiple arguments: iblksize,
dcachesize, ..., etc.
Produced a more descriptive error message when cache parameters are
not appropriate.
Included a patch to update the documentation of the plugins to
include cache plugin.
Included a patch to add myself as a reviewer for TCG plugins.
(Ignore if not appropriate of course)
Mahmoud Mandour (5):
plugins: Added a new cache modelling plugin
plugins/cache: Enable cache parameterization
plugins/cache: Added FIFO and LRU eviction policies
docs/devel: Added cache plugin to the plugins docs
MAINTAINTERS: Added myself as a reviewer for TCG Plugins
MAINTAINERS | 1 +
contrib/plugins/Makefile | 1 +
contrib/plugins/cache.c | 641 +++++++++++++++++++++++++++++++++++++
docs/devel/tcg-plugins.rst | 60 ++++
4 files changed, 703 insertions(+)
create mode 100644 contrib/plugins/cache.c
--
2.25.1