gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
LSQUnit< Impl >::LSQSenderState Class Reference

Derived class to hold any sender state the LSQ needs. More...

Inheritance diagram for LSQUnit< Impl >::LSQSenderState:
Packet::SenderState

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
SenderStatepredecessor
 

Detailed Description

template<class Impl>
class LSQUnit< Impl >::LSQSenderState

Derived class to hold any sender state the LSQ needs.

Definition at line 277 of file lsq_unit.hh.

Constructor & Destructor Documentation

template<class Impl >
LSQUnit< Impl >::LSQSenderState::LSQSenderState ( )
inline

Default constructor.

Definition at line 281 of file lsq_unit.hh.

Member Function Documentation

template<class Impl >
bool LSQUnit< Impl >::LSQSenderState::complete ( )
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().

Member Data Documentation

template<class Impl >
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().

template<class Impl >
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().

template<class Impl >
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().

template<class Impl >
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().

template<class Impl >
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().

template<class Impl >
PacketPtr LSQUnit< Impl >::LSQSenderState::mainPkt

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().

template<class Impl >
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().

template<class Impl >
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().

template<class Impl >
PacketPtr LSQUnit< Impl >::LSQSenderState::pendingPacket

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().

template<class Impl >
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().


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

Generated on Fri Jun 9 2017 13:04:14 for gem5 by doxygen 1.8.6