Go to the documentation of this file.
29 #ifndef __CACHE_PREFETCH_ASSOCIATIVE_SET_HH__
30 #define __CACHE_PREFETCH_ASSOCIATIVE_SET_HH__
43 static_assert(std::is_base_of<TaggedEntry, Entry>::value,
44 "Entry must derive from TaggedEntry");
163 #endif//__CACHE_PREFETCH_ASSOCIATIVE_SET_HH__
Copyright (c) 2018 Metempsy Technology Consulting All rights reserved.
AssociativeSet(int assoc, int num_entries, BaseIndexingPolicy *idx_policy, ReplacementPolicy::Base *rpl_policy, Entry const &init_val=Entry())
Public constructor.
const int associativity
Associativity of the container.
const_iterator end() const
Returns an iterator pointing to the end of the the dictionary (placeholder element,...
Entry * findEntry(Addr addr, bool is_secure) const
Find an entry within the set.
std::vector< Entry > entries
Vector containing the entries of the container.
void accessEntry(Entry *entry)
Do an access to the entry, this is required to update the replacement information data.
std::vector< Entry * > getPossibleEntries(const Addr addr) const
Find the set of entries that could be replaced given that we want to add a new entry with the provide...
A common base class of cache replacement policy objects.
void insertEntry(Addr addr, bool is_secure, Entry *entry)
Indicate that an entry has just been inserted.
typename std::vector< Prefetcher::IrregularStreamBuffer::AddressMappingEntry >::iterator iterator
iterator begin()
Returns an iterator to the first entry of the dictionary.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
Entry * findVictim(Addr addr)
Find a victim to be replaced.
const int numEntries
Total number of entries, entries are organized in sets of the provided associativity.
void invalidate(Entry *entry)
Invalidate an entry and its respective replacement data.
typename std::vector< Prefetcher::IrregularStreamBuffer::AddressMappingEntry >::const_iterator const_iterator
Iterator types.
iterator end()
Returns an iterator pointing to the end of the the dictionary (placeholder element,...
A common base class for indexing table locations.
BaseIndexingPolicy *const indexingPolicy
Pointer to the indexing policy.
const_iterator begin() const
Returns an iterator to the first entry of the dictionary.
ReplacementPolicy::Base *const replacementPolicy
Pointer to the replacement policy.
Generated on Tue Jun 22 2021 15:28:29 for gem5 by doxygen 1.8.17