summaryrefslogtreecommitdiff
path: root/src/mem/cache/tags
diff options
context:
space:
mode:
authorDaniel R. Carvalho <odanrc@yahoo.com.br>2018-10-10 14:44:05 +0200
committerDaniel Carvalho <odanrc@yahoo.com.br>2018-10-11 09:32:32 +0000
commit1b44e883a2be3e107602ef2d3d984f8727fc06ac (patch)
tree5faa421d2be10cd9564c42b17eff4843740af1a5 /src/mem/cache/tags
parent160bcba0d6729d37caf65e97a99e2ebdcf71f6a8 (diff)
downloadgem5-1b44e883a2be3e107602ef2d3d984f8727fc06ac.tar.xz
mem-cache: Virtualize block print
Encapsulate and virtualize block print, so that relevant information can be easily printed anywhere. Change-Id: I91109c29c126755183a0fd2b4446f5335e64076b Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/13415 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Diffstat (limited to 'src/mem/cache/tags')
-rw-r--r--src/mem/cache/tags/base.cc3
-rw-r--r--src/mem/cache/tags/base_set_assoc.hh4
-rw-r--r--src/mem/cache/tags/fa_lru.cc6
-rw-r--r--src/mem/cache/tags/fa_lru.hh7
-rw-r--r--src/mem/cache/tags/sector_tags.cc5
5 files changed, 14 insertions, 11 deletions
diff --git a/src/mem/cache/tags/base.cc b/src/mem/cache/tags/base.cc
index dddb8c71d..965e4ba16 100644
--- a/src/mem/cache/tags/base.cc
+++ b/src/mem/cache/tags/base.cc
@@ -201,8 +201,7 @@ BaseTags::print()
auto print_blk = [&str](CacheBlk &blk) {
if (blk.isValid())
- str += csprintf("\tset: %x, way: %x %s\n", blk.getSet(),
- blk.getWay(), blk.print());
+ str += csprintf("\tBlock: %s\n", blk.print());
};
forEachBlk(print_blk);
diff --git a/src/mem/cache/tags/base_set_assoc.hh b/src/mem/cache/tags/base_set_assoc.hh
index 01bfa05b2..11c0c8d11 100644
--- a/src/mem/cache/tags/base_set_assoc.hh
+++ b/src/mem/cache/tags/base_set_assoc.hh
@@ -54,7 +54,6 @@
#include "base/logging.hh"
#include "base/types.hh"
-#include "debug/CacheRepl.hh"
#include "mem/cache/base.hh"
#include "mem/cache/blk.hh"
#include "mem/cache/replacement_policies/base.hh"
@@ -187,9 +186,6 @@ class BaseSetAssoc : public BaseTags
// There is only one eviction for this replacement
evict_blks.push_back(victim);
- DPRINTF(CacheRepl, "set %x, way %x: selecting blk for replacement\n",
- victim->getSet(), victim->getWay());
-
return victim;
}
diff --git a/src/mem/cache/tags/fa_lru.cc b/src/mem/cache/tags/fa_lru.cc
index fa7c6595f..319d5602d 100644
--- a/src/mem/cache/tags/fa_lru.cc
+++ b/src/mem/cache/tags/fa_lru.cc
@@ -57,6 +57,12 @@
#include "base/logging.hh"
#include "mem/cache/base.hh"
+std::string
+FALRUBlk::print() const
+{
+ return csprintf("%s inCachesMask: %#x", CacheBlk::print(), inCachesMask);
+}
+
FALRU::FALRU(const Params *p)
: BaseTags(p),
diff --git a/src/mem/cache/tags/fa_lru.hh b/src/mem/cache/tags/fa_lru.hh
index 0d9a8d440..c2f983468 100644
--- a/src/mem/cache/tags/fa_lru.hh
+++ b/src/mem/cache/tags/fa_lru.hh
@@ -92,6 +92,13 @@ class FALRUBlk : public CacheBlk
/** A bit mask of the caches that fit this block. */
CachesMask inCachesMask;
+
+ /**
+ * Pretty-print inCachesMask and other CacheBlk information.
+ *
+ * @return string with basic state information
+ */
+ std::string print() const override;
};
/**
diff --git a/src/mem/cache/tags/sector_tags.cc b/src/mem/cache/tags/sector_tags.cc
index f256807e2..e993e296b 100644
--- a/src/mem/cache/tags/sector_tags.cc
+++ b/src/mem/cache/tags/sector_tags.cc
@@ -42,7 +42,6 @@
#include "base/intmath.hh"
#include "base/logging.hh"
#include "base/types.hh"
-#include "debug/CacheRepl.hh"
#include "mem/cache/base.hh"
#include "mem/cache/replacement_policies/base.hh"
#include "mem/cache/tags/indexing_policies/base.hh"
@@ -277,10 +276,6 @@ SectorTags::findVictim(Addr addr, const bool is_secure,
}
}
- DPRINTF(CacheRepl, "set %x, way %x, sector offset %x: selecting blk " \
- "for replacement\n", victim->getSet(), victim->getWay(),
- victim->getSectorOffset());
-
return victim;
}