14#ifndef LLVM_MCA_STAGES_INORDERISSUESTAGE_H 
   15#define LLVM_MCA_STAGES_INORDERISSUESTAGE_H 
   50  void update(
const InstRef &Inst, 
unsigned Cycles, StallKind SK);
 
 
   54class InOrderIssueStage final : 
public Stage {
 
   80  unsigned LastWriteBackCycle;
 
   82  InOrderIssueStage(
const InOrderIssueStage &
Other) = 
delete;
 
   83  InOrderIssueStage &operator=(
const InOrderIssueStage &
Other) = 
delete;
 
   94  void updateIssuedInst();
 
   97  void updateCarriedOver();
 
  101  void notifyStallEvent();
 
  103  void notifyInstructionIssued(
const InstRef &
IR,
 
  105  void notifyInstructionDispatched(
const InstRef &
IR, 
unsigned Ops,
 
  107  void notifyInstructionExecuted(
const InstRef &
IR);
 
  108  void notifyInstructionRetired(
const InstRef &
IR,
 
 
This file defines the base class CustomBehaviour which can be inherited from by specific targets (ex.
 
const AbstractManglingParser< Derived, Alloc >::OperatorInfo AbstractManglingParser< Derived, Alloc >::Ops[]
 
Legalize the Machine IR a function s Machine IR
 
This file contains abstract class SourceMgr and the default implementation, CircularSourceMgr.
 
The classes here represent processor resource units and their management strategy.
 
This file defines a stage.
 
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
 
Lightweight error class with error context and mandatory checking.
 
Generic base class for all target subtargets.
 
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
 
Class which can be overriden by targets to enforce instruction dependencies and behaviours that aren'...
 
bool hasWorkToComplete() const override
Returns true if some instructions are still executing this stage.
 
Error cycleEnd() override
Called once at the end of each cycle.
 
Error execute(InstRef &IR) override
The primary action that this stage performs on instruction IR.
 
bool isAvailable(const InstRef &) const override
Returns true if it can execute IR during this cycle.
 
unsigned getIssueWidth() const
 
Error cycleStart() override
Called once at the start of each cycle.
 
An InstRef contains both a SourceMgr index and Instruction pair.
 
Abstract base interface for LS (load/store) units in llvm-mca.
 
Manages hardware register files, and tracks register definitions for register renaming purposes.
 
This is an optimization pass for GlobalISel generic memory operations.
 
StallKind getStallKind() const
 
InstRef & getInstruction()
 
const InstRef & getInstruction() const
 
unsigned getCyclesLeft() const
 
void update(const InstRef &Inst, unsigned Cycles, StallKind SK)