gem5
|
Derived class to hold any sender state the LSQ needs. More...
Public Member Functions | |
LSQSenderState () | |
Default constructor. More... | |
bool | complete () |
Completes a packet and returns whether the access is finished. More... | |
Public Member Functions inherited from Packet::SenderState | |
SenderState () | |
virtual | ~SenderState () |
Public Attributes | |
DynInstPtr | inst |
Instruction who initiated the access to memory. More... | |
PacketPtr | mainPkt |
The main packet from a split load, used during writeback. More... | |
PacketPtr | pendingPacket |
A second packet from a split store that needs sending. More... | |
uint8_t | idx |
The LQ/SQ index of the instruction. More... | |
uint8_t | outstanding |
Number of outstanding packets to complete. More... | |
bool | isLoad |
Whether or not it is a load. More... | |
bool | noWB |
Whether or not the instruction will need to writeback. More... | |
bool | isSplit |
Whether or not this access is split in two. More... | |
bool | pktToSend |
Whether or not there is a packet that needs sending. More... | |
bool | cacheBlocked |
Whether or not the second packet of this split load was blocked. More... | |
Public Attributes inherited from Packet::SenderState | |
SenderState * | predecessor |
Derived class to hold any sender state the LSQ needs.
Definition at line 277 of file lsq_unit.hh.
|
inline |
Default constructor.
Definition at line 281 of file lsq_unit.hh.
|
inline |
Completes a packet and returns whether the access is finished.
Definition at line 309 of file lsq_unit.hh.
References LSQUnit< Impl >::LSQSenderState::outstanding.
Referenced by LSQUnit< Impl >::completeDataAccess(), and LSQUnit< Impl >::read().
bool LSQUnit< Impl >::LSQSenderState::cacheBlocked |
Whether or not the second packet of this split load was blocked.
Definition at line 306 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), and LSQUnit< Impl >::read().
uint8_t LSQUnit< Impl >::LSQSenderState::idx |
The LQ/SQ index of the instruction.
Definition at line 294 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), LSQUnit< Impl >::read(), and LSQUnit< Impl >::writebackStores().
DynInstPtr LSQUnit< Impl >::LSQSenderState::inst |
Instruction who initiated the access to memory.
Definition at line 288 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), LSQUnit< Impl >::read(), and LSQUnit< Impl >::writebackStores().
bool LSQUnit< Impl >::LSQSenderState::isLoad |
Whether or not it is a load.
Definition at line 298 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), LSQUnit< Impl >::read(), and LSQUnit< Impl >::writebackStores().
bool LSQUnit< Impl >::LSQSenderState::isSplit |
Whether or not this access is split in two.
Definition at line 302 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), LSQUnit< Impl >::read(), and LSQUnit< Impl >::writebackStores().
The main packet from a split load, used during writeback.
Definition at line 290 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), and LSQUnit< Impl >::read().
bool LSQUnit< Impl >::LSQSenderState::noWB |
Whether or not the instruction will need to writeback.
Definition at line 300 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::completeDataAccess(), and LSQUnit< Impl >::writebackStores().
uint8_t LSQUnit< Impl >::LSQSenderState::outstanding |
Number of outstanding packets to complete.
Definition at line 296 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::LSQSenderState::complete(), LSQUnit< Impl >::read(), and LSQUnit< Impl >::writebackStores().
A second packet from a split store that needs sending.
Definition at line 292 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::recvRetry(), and LSQUnit< Impl >::writebackStores().
bool LSQUnit< Impl >::LSQSenderState::pktToSend |
Whether or not there is a packet that needs sending.
Definition at line 304 of file lsq_unit.hh.
Referenced by LSQUnit< Impl >::recvRetry(), and LSQUnit< Impl >::writebackStores().