7 #ifndef OTAWA_HARD_PURECACHE_H
8 #define OTAWA_HARD_PURECACHE_H
10 #include <elm/assert.h>
12 #include <elm/serial2/macros.h>
13 #include <elm/genstruct/Vector.h>
16 namespace otawa {
namespace hard {
Definition: PureCache.h:19
Definition: PureCache.h:26
int wayBits(void) const
Definition: PureCache.h:107
t::uint32 mask
Definition: base.h:45
int wayCount(void) const
Definition: PureCache.h:52
virtual ~PureCache(void)
Definition: PureCache.h:46
void setReplacePolicy(replace_policy_t replace)
Set the replace policy of the cache.
Definition: hardware_PureCache.cpp:176
ot::mask block(address_t addr) const
Definition: PureCache.h:139
int rowBits(void) const
Definition: PureCache.h:103
Definition: PureCache.h:27
void setBlockBits(int block_bits)
Definition: hardware_PureCache.cpp:144
replace_policy_t replace
Definition: PureCache.h:33
ENUM(otawa::hard::PureCache::replace_policy_t)
ot::mask blockMask(void) const
Definition: PureCache.h:115
Definition: PureCache.h:23
ot::mask lineMask(void) const
Definition: PureCache.h:119
int tagBits(void) const
Definition: PureCache.h:111
t::uint32 size
Definition: base.h:46
Field< T > field(CString name, T &value)
ot::mask tagMask(void) const
Definition: PureCache.h:123
ot::mask offset(address_t addr) const
Definition: PureCache.h:127
offset_t offset(void) const
Get the offset value.
Definition: base.h:70
ot::size blockSize(void) const
Definition: PureCache.h:90
The representation of an address in OTAWA.
Definition: base.h:54
int rowCount(void) const
Definition: PureCache.h:53
int block_bits
Definition: PureCache.h:30
ot::mask tag(address_t addr) const
Definition: PureCache.h:135
Definition: PureCache.h:22
void setWayBits(int way_bits)
Set the way count as a number of bits.
Definition: hardware_PureCache.cpp:166
replace_policy_t
Definition: PureCache.h:21
int blockBits(void) const
Definition: PureCache.h:99
int way_bits
Definition: PureCache.h:32
Definition: PureCache.h:24
int blockCount(void) const
Definition: PureCache.h:54
PureCache(void)
Definition: PureCache.h:83
Definition: PureCache.h:25
ot::size cacheSize(void) const
Definition: PureCache.h:86
void setRowBits(int set_bits)
Set the row count as a number of bits.
Definition: hardware_PureCache.cpp:155
const PureCache * _next
Definition: PureCache.h:42
int row_bits
Definition: PureCache.h:31
ot::mask line(address_t addr) const
Definition: PureCache.h:131
SERIALIZABLE(PureCache, DFIELD(block_bits, 4)&DFIELD(row_bits, 12)&DFIELD(way_bits, 0)&elm::field("replace", replace, LRU))
replace_policy_t replacementPolicy(void) const
Definition: PureCache.h:94