From: Daniel R. Carvalho Date: Sat, 2 Jun 2018 13:10:42 +0000 (+0200) Subject: mem-cache: Change Cache block tag check X-Git-Tag: v19.0.0.0~2072 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=59505f7305cc3f3b7637233fd2d231bd7f561e80;p=gem5.git mem-cache: Change Cache block tag check Change tag to address check for compatibility with sector design. Cache should not use tag, as sector sub-blocks share them, and it could lead to wrong accesses. Change-Id: Id1fa26f417595f475c5b5c07ae1f02f5fa0684ba Reviewed-on: https://gem5-review.googlesource.com/10723 Reviewed-by: Nikos Nikoleris Maintainer: Nikos Nikoleris --- diff --git a/src/mem/cache/base.cc b/src/mem/cache/base.cc index fdfe37ef4..a8f29e370 100644 --- a/src/mem/cache/base.cc +++ b/src/mem/cache/base.cc @@ -1144,7 +1144,7 @@ BaseCache::handleFill(PacketPtr pkt, CacheBlk *blk, PacketList &writebacks, assert(!blk->isValid()); } else { // existing block... probably an upgrade - assert(blk->tag == tags->extractTag(addr)); + assert(regenerateBlkAddr(blk) == addr); assert(blk->isSecure() == is_secure); // either we're getting new data or the block should already be valid assert(pkt->hasData() || blk->isValid());