gem5  v20.1.0.0
Public Member Functions | Public Attributes | List of all members
Minor::Execute::ExecuteThreadInfo Struct Reference

#include <execute.hh>

Public Member Functions

 ExecuteThreadInfo (unsigned int insts_committed)
 Constructor. More...
 
 ExecuteThreadInfo (const ExecuteThreadInfo &other)
 

Public Attributes

Queue< QueuedInst, ReportTraitsAdaptor< QueuedInst > > * inFlightInsts
 In-order instructions either in FUs or the LSQ. More...
 
Queue< QueuedInst, ReportTraitsAdaptor< QueuedInst > > * inFUMemInsts
 Memory ref instructions still in the FUs. More...
 
unsigned int inputIndex
 Index that we've completed upto in getInput data. More...
 
bool lastCommitWasEndOfMacroop
 The last commit was the end of a full instruction so an interrupt can safely happen. More...
 
ForwardInstData instsBeingCommitted
 Structure for reporting insts currently being processed/retired for MinorTrace. More...
 
InstSeqNum streamSeqNum
 Source of sequence number for instuction streams. More...
 
InstSeqNum lastPredictionSeqNum
 A prediction number for use where one isn't available from an instruction. More...
 
DrainState drainState
 State progression for draining NotDraining -> ... More...
 

Detailed Description

Definition at line 144 of file execute.hh.

Constructor & Destructor Documentation

◆ ExecuteThreadInfo() [1/2]

Minor::Execute::ExecuteThreadInfo::ExecuteThreadInfo ( unsigned int  insts_committed)
inline

Constructor.

Definition at line 146 of file execute.hh.

◆ ExecuteThreadInfo() [2/2]

Minor::Execute::ExecuteThreadInfo::ExecuteThreadInfo ( const ExecuteThreadInfo other)
inline

Definition at line 155 of file execute.hh.

Member Data Documentation

◆ drainState

DrainState Minor::Execute::ExecuteThreadInfo::drainState

State progression for draining NotDraining -> ...

-> DrainAllInsts

Definition at line 195 of file execute.hh.

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

◆ inFlightInsts

Queue<QueuedInst, ReportTraitsAdaptor<QueuedInst> >* Minor::Execute::ExecuteThreadInfo::inFlightInsts

In-order instructions either in FUs or the LSQ.

Definition at line 165 of file execute.hh.

Referenced by Minor::Execute::commit(), Minor::Execute::getCommittingThread(), and Minor::Execute::issue().

◆ inFUMemInsts

Queue<QueuedInst, ReportTraitsAdaptor<QueuedInst> >* Minor::Execute::ExecuteThreadInfo::inFUMemInsts

Memory ref instructions still in the FUs.

Definition at line 168 of file execute.hh.

Referenced by Minor::Execute::commit(), Minor::Execute::getCommittingThread(), and Minor::Execute::issue().

◆ inputIndex

unsigned int Minor::Execute::ExecuteThreadInfo::inputIndex

Index that we've completed upto in getInput data.

We can say we're popInput when this equals getInput()->width()

Definition at line 172 of file execute.hh.

Referenced by Minor::Execute::issue().

◆ instsBeingCommitted

ForwardInstData Minor::Execute::ExecuteThreadInfo::instsBeingCommitted

Structure for reporting insts currently being processed/retired for MinorTrace.

Definition at line 180 of file execute.hh.

Referenced by Minor::Execute::commit().

◆ lastCommitWasEndOfMacroop

bool Minor::Execute::ExecuteThreadInfo::lastCommitWasEndOfMacroop

The last commit was the end of a full instruction so an interrupt can safely happen.

Definition at line 176 of file execute.hh.

Referenced by Minor::Execute::commit().

◆ lastPredictionSeqNum

InstSeqNum Minor::Execute::ExecuteThreadInfo::lastPredictionSeqNum

A prediction number for use where one isn't available from an instruction.

This is harvested from committed instructions. This isn't really needed as the streamSeqNum will change on a branch, but it minimises disruption in stream identification

Definition at line 192 of file execute.hh.

Referenced by Minor::Execute::commit().

◆ streamSeqNum

InstSeqNum Minor::Execute::ExecuteThreadInfo::streamSeqNum

Source of sequence number for instuction streams.

Increment this and pass to fetch whenever an instruction stream needs to be changed. For any more complicated behaviour (e.g. speculation) there'll need to be another plan.

Definition at line 186 of file execute.hh.

Referenced by Minor::Execute::commit(), and Minor::Execute::issue().


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

Generated on Wed Sep 30 2020 14:03:06 for gem5 by doxygen 1.8.17