gem5
v20.1.0.0
|
A sparse map from an Addr to a Value, stored in page chunks. More...
#include <decode_cache.hh>
Classes | |
struct | CacheChunk |
Public Member Functions | |
AddrMap () | |
Constructor. More... | |
Value & | lookup (Addr addr) |
Protected Types | |
typedef std::unordered_map< Addr, CacheChunk * > | ChunkMap |
typedef ChunkMap::iterator | ChunkIt |
Protected Member Functions | |
void | update (ChunkIt recentest) |
Update the mini cache of recent lookups. More... | |
CacheChunk * | getChunk (Addr addr) |
Attempt to find the CacheChunk which goes with a particular address. More... | |
Static Protected Member Functions | |
static constexpr Addr | chunkOffset (Addr addr) |
static constexpr Addr | chunkStart (Addr addr) |
Protected Attributes | |
ChunkIt | recent [2] |
ChunkMap | chunkMap |
Static Protected Attributes | |
static constexpr Addr | CacheChunkBytes = 1ULL << CacheChunkShift |
A sparse map from an Addr to a Value, stored in page chunks.
Definition at line 46 of file decode_cache.hh.
|
protected |
Definition at line 70 of file decode_cache.hh.
|
protected |
Definition at line 69 of file decode_cache.hh.
|
inline |
Constructor.
Definition at line 121 of file decode_cache.hh.
|
inlinestaticconstexprprotected |
Definition at line 52 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::lookup().
|
inlinestaticconstexprprotected |
Definition at line 58 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::getChunk().
|
inlineprotected |
Attempt to find the CacheChunk which goes with a particular address.
First check the small cache of recent results, then actually look in the hash map.
addr | The address to look up. |
Definition at line 89 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::lookup().
|
inline |
Definition at line 127 of file decode_cache.hh.
Referenced by X86ISA::Decoder::doResetState().
|
inlineprotected |
Update the mini cache of recent lookups.
recentest | The most recent result; |
Definition at line 78 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::getChunk().
|
staticconstexprprotected |
Definition at line 49 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::chunkOffset(), and DecodeCache::AddrMap< RefCountingPtr >::chunkStart().
|
protected |
Definition at line 73 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::AddrMap(), and DecodeCache::AddrMap< RefCountingPtr >::getChunk().
|
protected |
Definition at line 72 of file decode_cache.hh.
Referenced by DecodeCache::AddrMap< RefCountingPtr >::AddrMap(), DecodeCache::AddrMap< RefCountingPtr >::getChunk(), and DecodeCache::AddrMap< RefCountingPtr >::update().