mem-cache: Fix RepeatedQwords compressor

This compressor does not allocate dictionary entries when there
is a match. This was causing the compressor to always fail.

Change-Id: I50eb56fa284854f3ee87f33af2c6e0a5c5248d7c
Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/33375
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
Daniel R. Carvalho
2020-06-16 17:15:32 +02:00
committed by Daniel Carvalho
parent 9e7dbd0544
commit 0658b53e93
2 changed files with 4 additions and 3 deletions

View File

@@ -563,9 +563,10 @@ class DictionaryCompressor<T>::LocatedMaskedPattern
const uint64_t code,
const uint64_t metadata_length,
const int match_location,
const DictionaryEntry bytes)
const DictionaryEntry bytes,
const bool allocate = true)
: MaskedPattern<mask>(number, code, metadata_length, match_location,
bytes)
bytes, allocate)
{
}

View File

@@ -116,7 +116,7 @@ class RepeatedQwords::PatternM
public:
PatternM(const DictionaryEntry bytes, const int match_location)
: LocatedMaskedPattern<0xFFFFFFFFFFFFFFFF, 0>(M, 1, 0, match_location,
bytes)
bytes, false)
{
}
};