gem5 v24.0.0.0
Loading...
Searching...
No Matches
gem5::minor::Execute::ExecuteThreadInfo Struct Reference

#include <execute.hh>

Public Member Functions

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

Public Attributes

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

Detailed Description

Definition at line 152 of file execute.hh.

Constructor & Destructor Documentation

◆ ExecuteThreadInfo() [1/2]

gem5::minor::Execute::ExecuteThreadInfo::ExecuteThreadInfo ( unsigned int insts_committed)
inline

Constructor.

Definition at line 155 of file execute.hh.

◆ ExecuteThreadInfo() [2/2]

gem5::minor::Execute::ExecuteThreadInfo::ExecuteThreadInfo ( const ExecuteThreadInfo & other)
inline

Definition at line 164 of file execute.hh.

Member Data Documentation

◆ drainState

DrainState gem5::minor::Execute::ExecuteThreadInfo::drainState

State progression for draining NotDraining -> ... -> DrainAllInsts.

Definition at line 204 of file execute.hh.

Referenced by gem5::minor::Execute::evaluate().

◆ inFlightInsts

Queue<QueuedInst, ReportTraitsAdaptor<QueuedInst> >* gem5::minor::Execute::ExecuteThreadInfo::inFlightInsts

In-order instructions either in FUs or the LSQ.

Definition at line 174 of file execute.hh.

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

◆ inFUMemInsts

Queue<QueuedInst, ReportTraitsAdaptor<QueuedInst> >* gem5::minor::Execute::ExecuteThreadInfo::inFUMemInsts

Memory ref instructions still in the FUs.

Definition at line 177 of file execute.hh.

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

◆ inputIndex

unsigned int gem5::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 181 of file execute.hh.

Referenced by gem5::minor::Execute::issue().

◆ instsBeingCommitted

ForwardInstData gem5::minor::Execute::ExecuteThreadInfo::instsBeingCommitted

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

Definition at line 189 of file execute.hh.

Referenced by gem5::minor::Execute::commit().

◆ lastCommitWasEndOfMacroop

bool gem5::minor::Execute::ExecuteThreadInfo::lastCommitWasEndOfMacroop

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

Definition at line 185 of file execute.hh.

Referenced by gem5::minor::Execute::commit().

◆ lastPredictionSeqNum

InstSeqNum gem5::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 201 of file execute.hh.

Referenced by gem5::minor::Execute::commit().

◆ streamSeqNum

InstSeqNum gem5::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 195 of file execute.hh.

Referenced by gem5::minor::Execute::commit(), and gem5::minor::Execute::issue().


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

Generated on Tue Jun 18 2024 16:24:20 for gem5 by doxygen 1.11.0