gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
Minor::Fetch2::Fetch2ThreadInfo Struct Reference

Data members after this line are cycle-to-cycle state. More...

#include <fetch2.hh>

Public Member Functions

 Fetch2ThreadInfo ()
 Default constructor. More...
 
 Fetch2ThreadInfo (const Fetch2ThreadInfo &other)
 

Public Attributes

unsigned int inputIndex
 Index into an incompletely processed input line that instructions are to be extracted from. More...
 
TheISA::PCState pc
 Remembered program counter value. More...
 
bool havePC
 PC is currently valid. More...
 
InstSeqNum lastStreamSeqNum
 Stream sequence number of the last seen line used to identify changes of instruction stream. More...
 
InstSeqNum fetchSeqNum
 Fetch2 is the source of fetch sequence numbers. More...
 
InstSeqNum expectedStreamSeqNum
 Stream sequence number remembered from last time the predictionSeqNum changed. More...
 
InstSeqNum predictionSeqNum
 Fetch2 is the source of prediction sequence numbers. More...
 
bool blocked
 Blocked indication for report. More...
 

Detailed Description

Data members after this line are cycle-to-cycle state.

Definition at line 100 of file fetch2.hh.

Constructor & Destructor Documentation

Minor::Fetch2::Fetch2ThreadInfo::Fetch2ThreadInfo ( )
inline

Default constructor.

Definition at line 103 of file fetch2.hh.

Minor::Fetch2::Fetch2ThreadInfo::Fetch2ThreadInfo ( const Fetch2ThreadInfo other)
inline

Definition at line 114 of file fetch2.hh.

Member Data Documentation

bool Minor::Fetch2::Fetch2ThreadInfo::blocked

Blocked indication for report.

Definition at line 162 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate().

InstSeqNum Minor::Fetch2::Fetch2ThreadInfo::expectedStreamSeqNum

Stream sequence number remembered from last time the predictionSeqNum changed.

Lines should only be discarded when their predictionSeqNums disagree with Fetch2::predictionSeqNum and they are from the same stream that bore that prediction number

Definition at line 154 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate(), and Minor::Fetch2::predictBranch().

InstSeqNum Minor::Fetch2::Fetch2ThreadInfo::fetchSeqNum

Fetch2 is the source of fetch sequence numbers.

These represent the sequence that instructions were extracted from fetched lines.

Definition at line 148 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate().

bool Minor::Fetch2::Fetch2ThreadInfo::havePC

PC is currently valid.

Initially false, gets set to true when a change-of-stream line is received and false again when lines are discarded for any reason

Definition at line 140 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate().

unsigned int Minor::Fetch2::Fetch2ThreadInfo::inputIndex

Index into an incompletely processed input line that instructions are to be extracted from.

Definition at line 126 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate().

InstSeqNum Minor::Fetch2::Fetch2ThreadInfo::lastStreamSeqNum

Stream sequence number of the last seen line used to identify changes of instruction stream.

Definition at line 144 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate().

TheISA::PCState Minor::Fetch2::Fetch2ThreadInfo::pc

Remembered program counter value.

Between contiguous lines, this is just updated with advancePC. For lines following changes of stream, a new PC must be loaded and havePC be set. havePC is needed to accomodate instructions which span across lines meaning that Fetch2 and the decoder need to remember a PC value and a partially-offered instruction from the previous line

Definition at line 135 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate().

InstSeqNum Minor::Fetch2::Fetch2ThreadInfo::predictionSeqNum

Fetch2 is the source of prediction sequence numbers.

These represent predicted changes of control flow sources from branch prediction in Fetch2.

Definition at line 159 of file fetch2.hh.

Referenced by Minor::Fetch2::evaluate(), and Minor::Fetch2::predictBranch().


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

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