Make cache compression policy a runtime virtual thing

instead of a template policy.

--HG--
extra : convert_revision : 6a4ac7a189a950390a973fdfce94f56190de92db
This commit is contained in:
Steve Reinhardt
2006-12-02 22:22:58 -08:00
parent d2a71f6b2a
commit 6f94c3c8d7
8 changed files with 137 additions and 156 deletions

View File

@@ -38,41 +38,23 @@
*/
#include "base/misc.hh" // for fatal()
#include "sim/host.hh"
#include "base/compression/base.hh"
/**
* A dummy compression class to use when no data compression is desired.
*/
class NullCompression
class NullCompression : public CompressionAlgorithm
{
public:
/**
* Uncompress the data, causes a fatal since no data should be compressed.
* @param dest The output buffer.
* @param src The compressed data.
* @param size The number of bytes in src.
*
* @retval The size of the uncompressed data.
*/
static int uncompress(uint8_t * dest, uint8_t *src, int size)
int uncompress(uint8_t * dest, uint8_t *src, int size)
{
fatal("Can't uncompress data");
}
/**
* Compress the data, just returns the source data.
* @param dest The output buffer.
* @param src The data to be compressed.
* @param size The number of bytes in src.
*
* @retval The size of the compressed data.
*/
static int compress(uint8_t *dest, uint8_t *src, int size)
int compress(uint8_t *dest, uint8_t *src, int size)
{
memcpy(dest,src,size);
return size;
fatal("Can't compress data");
}
};