gem5
|
#include <NetDest.hh>
Public Member Functions | |
NetDest () | |
NetDest (int bit_size) | |
NetDest & | operator= (const Set &obj) |
~NetDest () | |
void | add (MachineID newElement) |
void | addNetDest (const NetDest &netDest) |
void | setNetDest (MachineType machine, const Set &set) |
void | remove (MachineID oldElement) |
void | removeNetDest (const NetDest &netDest) |
void | clear () |
void | broadcast () |
void | broadcast (MachineType machine) |
int | count () const |
bool | isEqual (const NetDest &netDest) const |
NetDest | OR (const NetDest &orNetDest) const |
NetDest | AND (const NetDest &andNetDest) const |
bool | intersectionIsNotEmpty (const NetDest &other_netDest) const |
bool | intersectionIsEmpty (const NetDest &other_netDest) const |
bool | isSuperset (const NetDest &test) const |
bool | isSubset (const NetDest &test) const |
bool | isElement (MachineID element) const |
bool | isBroadcast () const |
bool | isEmpty () const |
std::vector< NodeID > | getAllDest () |
MachineID | smallestElement () const |
MachineID | smallestElement (MachineType machine) const |
void | resize () |
int | getSize () const |
NodeID | elementAt (MachineID index) |
void | print (std::ostream &out) const |
Private Member Functions | |
int | vecIndex (MachineID m) const |
NodeID | bitIndex (NodeID index) const |
Private Attributes | |
std::vector< Set > | m_bits |
Definition at line 39 of file NetDest.hh.
NetDest::NetDest | ( | ) |
Definition at line 33 of file NetDest.cc.
References resize().
|
explicit |
|
inline |
Definition at line 49 of file NetDest.hh.
void NetDest::add | ( | MachineID | newElement | ) |
Definition at line 39 of file NetDest.cc.
References bitIndex(), getSize(), m_bits, MachineID::num, and vecIndex().
Referenced by broadcast(), broadcast(), NetworkInterface::flitisizeMessage(), PersistentTable::persistentRequestLock(), and Topology::shortest_path_to_node().
void NetDest::addNetDest | ( | const NetDest & | netDest | ) |
Definition at line 46 of file NetDest.cc.
Definition at line 204 of file NetDest.cc.
References getSize(), ArmISA::i, and m_bits.
Referenced by PerfectSwitch::operateMessageBuffer().
Definition at line 106 of file NetDest.hh.
References MipsISA::index.
Referenced by add(), elementAt(), isElement(), and remove().
void NetDest::broadcast | ( | ) |
Definition at line 87 of file NetDest.cc.
void NetDest::broadcast | ( | MachineType | machine | ) |
Definition at line 96 of file NetDest.cc.
void NetDest::clear | ( | ) |
Definition at line 79 of file NetDest.cc.
References ArmISA::i, and m_bits.
Referenced by NetworkInterface::flitisizeMessage().
int NetDest::count | ( | ) | const |
Definition at line 122 of file NetDest.cc.
References ArmISA::i, and m_bits.
Referenced by PersistentTable::countReadStarvingForAddress(), PersistentTable::countStarvingForAddress(), PerfectSwitch::operateMessageBuffer(), and smallestElement().
Definition at line 132 of file NetDest.cc.
References bitIndex(), m_bits, MachineID::num, and vecIndex().
std::vector< NodeID > NetDest::getAllDest | ( | ) |
Definition at line 106 of file NetDest.cc.
References ArmISA::i, isElement(), ArmISA::j, and m_bits.
Referenced by NetworkInterface::flitisizeMessage().
|
inline |
Definition at line 88 of file NetDest.hh.
References m_bits.
Referenced by add(), addNetDest(), AND(), intersectionIsNotEmpty(), isSuperset(), OR(), and removeNetDest().
bool NetDest::intersectionIsEmpty | ( | const NetDest & | other_netDest | ) | const |
Referenced by intersectionIsNotEmpty().
bool NetDest::intersectionIsNotEmpty | ( | const NetDest & | other_netDest | ) | const |
Definition at line 216 of file NetDest.cc.
References getSize(), ArmISA::i, intersectionIsEmpty(), and m_bits.
Referenced by RoutingUnit::lookupRoutingTable(), and PerfectSwitch::operateMessageBuffer().
bool NetDest::isBroadcast | ( | ) | const |
Definition at line 168 of file NetDest.cc.
References ArmISA::i, and m_bits.
Referenced by network_message_to_size().
bool NetDest::isElement | ( | MachineID | element | ) | const |
Definition at line 241 of file NetDest.cc.
References bitIndex(), m_bits, MachineID::num, and vecIndex().
Referenced by getAllDest(), PersistentTable::okToIssueStarving(), PersistentTable::persistentRequestLock(), print(), and smallestElement().
bool NetDest::isEmpty | ( | ) | const |
Definition at line 180 of file NetDest.cc.
References ArmISA::i, and m_bits.
Referenced by PersistentTable::markEntries(), and PersistentTable::okToIssueStarving().
bool NetDest::isEqual | ( | const NetDest & | netDest | ) | const |
Definition at line 272 of file NetDest.cc.
|
inline |
Definition at line 76 of file NetDest.hh.
References isSuperset().
Referenced by PersistentTable::persistentRequestLock().
bool NetDest::isSuperset | ( | const NetDest & | test | ) | const |
Definition at line 228 of file NetDest.cc.
References getSize(), ArmISA::i, and m_bits.
Referenced by isSubset().
Definition at line 192 of file NetDest.cc.
void NetDest::print | ( | std::ostream & | out | ) | const |
Definition at line 258 of file NetDest.cc.
References ArmISA::i, isElement(), ArmISA::j, and m_bits.
Referenced by operator<<().
void NetDest::remove | ( | MachineID | oldElement | ) |
Definition at line 64 of file NetDest.cc.
References bitIndex(), m_bits, MachineID::num, and vecIndex().
Referenced by PersistentTable::persistentRequestUnlock().
void NetDest::removeNetDest | ( | const NetDest & | netDest | ) |
Definition at line 70 of file NetDest.cc.
References getSize(), ArmISA::i, and m_bits.
Referenced by NetworkInterface::flitisizeMessage(), and PerfectSwitch::operateMessageBuffer().
void NetDest::resize | ( | ) |
Definition at line 247 of file NetDest.cc.
References ArmISA::i, and m_bits.
Referenced by NetDest().
void NetDest::setNetDest | ( | MachineType | machine, |
const Set & | set | ||
) |
Definition at line 55 of file NetDest.cc.
References m_bits.
MachineID NetDest::smallestElement | ( | ) | const |
Definition at line 138 of file NetDest.cc.
References count(), ArmISA::i, isElement(), ArmISA::j, m_bits, and panic.
Referenced by PersistentTable::findSmallest().
MachineID NetDest::smallestElement | ( | MachineType | machine | ) | const |
Definition at line 153 of file NetDest.cc.
References isElement(), ArmISA::j, m_bits, panic, and X86ISA::size().
|
inlineprivate |
Definition at line 99 of file NetDest.hh.
References m_bits, and MachineID::type.
Referenced by add(), elementAt(), isElement(), and remove().
|
private |
Definition at line 108 of file NetDest.hh.
Referenced by add(), addNetDest(), AND(), clear(), count(), elementAt(), getAllDest(), getSize(), intersectionIsNotEmpty(), isBroadcast(), isElement(), isEmpty(), isEqual(), isSuperset(), OR(), print(), remove(), removeNetDest(), resize(), setNetDest(), smallestElement(), and vecIndex().