54 m_map.insert(AddressMap::value_type(address, dflt));
56 AddressMap::iterator
i =
r.first;
65 if (
type == AccessType_Write)
77 assert(
m_map.count(address));
103 AddressMap::const_iterator
i =
m_map.find(address);
124 AddressMap::const_iterator
i =
m_map.find(address);
134 AddressMap::const_iterator
i =
m_map.find(address);
139 return AccessType_Write;
141 return AccessType_Read;
149 AddressMap::iterator
i =
m_map.find(address);
168 return m_map.count(address) > 0;
175 AddressMap::const_iterator
i =
m_map.find(address);
187 AddressMap::const_iterator
i =
m_map.find(address);
void add(MachineID newElement)
void remove(MachineID oldElement)
bool isElement(MachineID element) const
bool isSubset(const NetDest &test) const
MachineID smallestElement() const
NetDest m_request_to_write
void persistentRequestLock(Addr address, MachineID locker, AccessType type)
void persistentRequestUnlock(Addr address, MachineID unlocker)
int countReadStarvingForAddress(Addr addr) const
AccessType typeOfSmallest(Addr address) const
MachineID findSmallest(Addr address) const
bool isLocked(Addr addr) const
void markEntries(Addr address)
bool okToIssueStarving(Addr address, MachineID machID) const
void print(std::ostream &out) const
int countStarvingForAddress(Addr addr) const
Addr makeLineAddress(Addr addr)
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.