gem5 v25.0.0.1
Loading...
Searching...
No Matches
gem5::VegaISA::PageWalkCache Class Reference

#include <page_walk_cache.hh>

Inheritance diagram for gem5::VegaISA::PageWalkCache:
gem5::AssociativeCache< PWCEntry > gem5::Named

Public Member Functions

PWCEntryaccessEntry (const KeyType &key) override
PWCEntryfindEntry (const KeyType &key) const override
void insert (const KeyType &key, const PageTableEntry &pte_entry)
Public Member Functions inherited from gem5::AssociativeCache< PWCEntry >
 AssociativeCache (std::string_view name)
 Empty constructor - need to call init() later with all args.
 ~AssociativeCache ()=default
 Default destructor.
AssociativeCacheoperator= (const AssociativeCache &)=delete
void clear ()
 Clear the entries in the cache.
void init (const size_t num_entries, const size_t associativity_, BaseReplacementPolicy *_repl_policy, IndexingPolicy *_indexing_policy, PWCEntry const &init_val=PWCEntry())
void setDebugFlag (const ::gem5::debug::SimpleFlag &flag)
virtual PWCEntry * accessEntry (const KeyType &key)
 Do an access to the entry if it exists.
virtual PWCEntry * findEntry (const KeyType &key) const
 Find an entry within the set.
virtual PWCEntry * findVictim (const KeyType &key)
 Find a victim to be replaced.
virtual void invalidate (PWCEntry *entry)
 Invalidate an entry and its respective replacement data.
virtual void insertEntry (const KeyType &key, PWCEntry *entry)
 Indicate that an entry has just been inserted.
std::vector< PWCEntry * > getPossibleEntries (const KeyType &key) const
 Find the set of entries that could be replaced given that we want to add a new entry with the provided key.
iterator begin ()
 Returns an iterator to the first entry of the dictionary.
iterator end ()
 Returns an iterator pointing to the end of the the dictionary (placeholder element, should not be accessed)
Public Member Functions inherited from gem5::Named
 Named (std::string_view name_)
virtual ~Named ()=default
virtual std::string name () const

Additional Inherited Members

Public Types inherited from gem5::AssociativeCache< PWCEntry >
using const_iterator
 Iterator types.
using iterator
Protected Types inherited from gem5::AssociativeCache< PWCEntry >
typedef replacement_policy::Base BaseReplacementPolicy
typedef PWCEntry::IndexingPolicy IndexingPolicy
typedef PWCEntry::KeyType KeyType
Protected Attributes inherited from gem5::AssociativeCache< PWCEntry >
size_t associativity
 Associativity of the cache.
BaseReplacementPolicyreplPolicy
 The replacement policy of the cache.
IndexingPolicyindexingPolicy
 Indexing policy of the cache.
std::vector< PWCEntry > entries
 The entries.
const ::gem5::debug::SimpleFlagdebugFlag

Detailed Description

Definition at line 126 of file page_walk_cache.hh.

Member Function Documentation

◆ accessEntry()

PWCEntry * gem5::VegaISA::PageWalkCache::accessEntry ( const KeyType & key)
inlineoverride

Definition at line 132 of file page_walk_cache.hh.

References accessEntry(), and findEntry().

Referenced by accessEntry().

◆ findEntry()

PWCEntry * gem5::VegaISA::PageWalkCache::findEntry ( const KeyType & key) const
inlineoverride

Definition at line 138 of file page_walk_cache.hh.

References gem5::AssociativeCache< PWCEntry >::indexingPolicy.

Referenced by accessEntry().

◆ insert()


The documentation for this class was generated from the following file:

Generated on Sat Oct 18 2025 08:07:52 for gem5 by doxygen 1.14.0