LLVM  8.0.1
Public Member Functions | List of all members
llvm::mca::RetireStage Class Referencefinal

#include "llvm/MCA/Stages/RetireStage.h"

Inheritance diagram for llvm::mca::RetireStage:
Inheritance graph
[legend]
Collaboration diagram for llvm::mca::RetireStage:
Collaboration graph
[legend]

Public Member Functions

 RetireStage (RetireControlUnit &R, RegisterFile &F)
 
bool hasWorkToComplete () const override
 Returns true if some instructions are still executing this stage. More...
 
Error cycleStart () override
 Called once at the start of each cycle. More...
 
Error execute (InstRef &IR) override
 The primary action that this stage performs on instruction IR. More...
 
void notifyInstructionRetired (const InstRef &IR) const
 
- Public Member Functions inherited from llvm::mca::Stage
 Stage ()
 
virtual ~Stage ()
 
virtual bool isAvailable (const InstRef &IR) const
 Returns true if it can execute IR during this cycle. More...
 
virtual Error cycleEnd ()
 Called once at the end of each cycle. More...
 
void setNextInSequence (Stage *NextStage)
 
bool checkNextStage (const InstRef &IR) const
 
Error moveToTheNextStage (InstRef &IR)
 Called when an instruction is ready to move the next pipeline stage. More...
 
void addListener (HWEventListener *Listener)
 Add a listener to receive callbacks during the execution of this stage. More...
 
template<typename EventT >
void notifyEvent (const EventT &Event) const
 Notify listeners of a particular hardware event. More...
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::mca::Stage
const std::set< HWEventListener * > & getListeners () const
 

Detailed Description

Definition at line 27 of file RetireStage.h.

Constructor & Destructor Documentation

◆ RetireStage()

llvm::mca::RetireStage::RetireStage ( RetireControlUnit R,
RegisterFile F 
)
inline

Definition at line 36 of file RetireStage.h.

Member Function Documentation

◆ cycleStart()

llvm::Error llvm::mca::RetireStage::cycleStart ( )
overridevirtual

◆ execute()

llvm::Error llvm::mca::RetireStage::execute ( InstRef IR)
overridevirtual

The primary action that this stage performs on instruction IR.

Implements llvm::mca::Stage.

Definition at line 46 of file RetireStage.cpp.

References llvm::mca::InstRef::getInstruction(), llvm::mca::Instruction::getRCUTokenID(), and llvm::mca::RetireControlUnit::onInstructionExecuted().

Referenced by hasWorkToComplete().

◆ hasWorkToComplete()

bool llvm::mca::RetireStage::hasWorkToComplete ( ) const
inlineoverridevirtual

Returns true if some instructions are still executing this stage.

Implements llvm::mca::Stage.

Definition at line 39 of file RetireStage.h.

References cycleStart(), execute(), IR, and notifyInstructionRetired().

◆ notifyInstructionRetired()

void llvm::mca::RetireStage::notifyInstructionRetired ( const InstRef IR) const

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