gem5
v21.0.1.0
|
Derived class to hold any sender state the LSQ needs. More...
#include <lsq.hh>
Public Member Functions | |
ContextID | contextId () |
bool | isComplete () |
Completes a packet and returns whether the access is finished. More... | |
void | deleteRequest () |
bool | alive () |
LSQRequest * | request () |
virtual void | complete ()=0 |
void | writebackDone () |
![]() | |
SenderState () | |
virtual | ~SenderState () |
Public Attributes | |
DynInstPtr | inst |
Instruction which 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 | outstanding |
Number of outstanding packets to complete. More... | |
bool | isLoad |
Whether or not it is a load. More... | |
bool | needWB |
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 | deleted |
Has the request been deleted? LSQ entries can be squashed before the response comes back. More... | |
![]() | |
SenderState * | predecessor |
Protected Member Functions | |
LSQSenderState (LSQRequest *request, bool isLoad_) | |
Default constructor. More... | |
Protected Attributes | |
LSQRequest * | _request |
The senderState needs to know the LSQRequest who owns it. More... | |
Derived class to hold any sender state the LSQ needs.
|
inlineprotected |
|
inline |
Definition at line 119 of file lsq.hh.
References LSQ< Impl >::LSQSenderState::deleted.
|
pure virtual |
Definition at line 114 of file lsq.hh.
References LSQ< Impl >::LSQSenderState::inst.
|
inline |
Definition at line 118 of file lsq.hh.
References LSQ< Impl >::LSQSenderState::deleted.
Referenced by LSQ< Impl >::LSQRequest::discardSenderState(), and LSQ< Impl >::LSQRequest::release().
|
inline |
Completes a packet and returns whether the access is finished.
Definition at line 117 of file lsq.hh.
References LSQ< Impl >::LSQSenderState::outstanding.
|
inline |
Definition at line 120 of file lsq.hh.
References LSQ< Impl >::LSQSenderState::_request.
|
inline |
Definition at line 122 of file lsq.hh.
References LSQ< Impl >::LSQSenderState::_request, and LSQ< Impl >::LSQRequest::writebackDone().
|
protected |
The senderState needs to know the LSQRequest who owns it.
Definition at line 83 of file lsq.hh.
Referenced by LSQ< Impl >::LSQSenderState::request(), and LSQ< Impl >::LSQSenderState::writebackDone().
bool LSQ< Impl >::LSQSenderState::deleted |
Has the request been deleted? LSQ entries can be squashed before the response comes back.
in that case the SenderState knows.
Definition at line 113 of file lsq.hh.
Referenced by LSQ< Impl >::LSQSenderState::alive(), and LSQ< Impl >::LSQSenderState::deleteRequest().
DynInstPtr LSQ< Impl >::LSQSenderState::inst |
Instruction which initiated the access to memory.
Definition at line 94 of file lsq.hh.
Referenced by LSQ< Impl >::LSQSenderState::contextId().
bool LSQ< Impl >::LSQSenderState::isLoad |
bool LSQ< Impl >::LSQSenderState::isSplit |
bool LSQ< Impl >::LSQSenderState::needWB |
uint8_t LSQ< Impl >::LSQSenderState::outstanding |
Number of outstanding packets to complete.
Definition at line 100 of file lsq.hh.
Referenced by LSQ< Impl >::LSQSenderState::isComplete(), and LSQ< Impl >::SingleDataRequest::recvTimingResp().
bool LSQ< Impl >::LSQSenderState::pktToSend |