LLVM  16.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::mca::StallInfo Struct Reference

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

Collaboration diagram for llvm::mca::StallInfo:
Collaboration graph
[legend]

Public Types

enum  StallKind {
  StallKind::DEFAULT, StallKind::REGISTER_DEPS, StallKind::DISPATCH, StallKind::DELAY,
  StallKind::LOAD_STORE, StallKind::CUSTOM_STALL
}
 

Public Member Functions

 StallInfo ()
 
StallKind getStallKind () const
 
unsigned getCyclesLeft () const
 
const InstRefgetInstruction () const
 
InstRefgetInstruction ()
 
bool isValid () const
 
void clear ()
 
void update (const InstRef &Inst, unsigned Cycles, StallKind SK)
 
void cycleEnd ()
 

Public Attributes

InstRef IR
 
unsigned CyclesLeft
 
StallKind Kind
 

Detailed Description

Definition at line 27 of file InOrderIssueStage.h.

Member Enumeration Documentation

◆ StallKind

Enumerator
DEFAULT 
REGISTER_DEPS 
DISPATCH 
DELAY 
LOAD_STORE 
CUSTOM_STALL 

Definition at line 28 of file InOrderIssueStage.h.

Constructor & Destructor Documentation

◆ StallInfo()

llvm::mca::StallInfo::StallInfo ( )
inline

Definition at line 41 of file InOrderIssueStage.h.

Member Function Documentation

◆ clear()

void llvm::mca::StallInfo::clear ( )

◆ cycleEnd()

void llvm::mca::StallInfo::cycleEnd ( )

Definition at line 36 of file InOrderIssueStage.cpp.

References CyclesLeft, and isValid().

Referenced by llvm::mca::InOrderIssueStage::cycleEnd().

◆ getCyclesLeft()

unsigned llvm::mca::StallInfo::getCyclesLeft ( ) const
inline

Definition at line 44 of file InOrderIssueStage.h.

References CyclesLeft.

Referenced by llvm::mca::InOrderIssueStage::cycleStart().

◆ getInstruction() [1/2]

InstRef& llvm::mca::StallInfo::getInstruction ( )
inline

Definition at line 46 of file InOrderIssueStage.h.

References IR.

◆ getInstruction() [2/2]

const InstRef& llvm::mca::StallInfo::getInstruction ( ) const
inline

Definition at line 45 of file InOrderIssueStage.h.

References IR.

Referenced by llvm::mca::InOrderIssueStage::cycleStart().

◆ getStallKind()

StallKind llvm::mca::StallInfo::getStallKind ( ) const
inline

Definition at line 43 of file InOrderIssueStage.h.

References Kind.

◆ isValid()

bool llvm::mca::StallInfo::isValid ( ) const
inline

◆ update()

void llvm::mca::StallInfo::update ( const InstRef Inst,
unsigned  Cycles,
StallKind  SK 
)

Definition at line 30 of file InOrderIssueStage.cpp.

References CyclesLeft, IR, and Kind.

Member Data Documentation

◆ CyclesLeft

unsigned llvm::mca::StallInfo::CyclesLeft

Definition at line 38 of file InOrderIssueStage.h.

Referenced by clear(), cycleEnd(), getCyclesLeft(), and update().

◆ IR

InstRef llvm::mca::StallInfo::IR

Definition at line 37 of file InOrderIssueStage.h.

Referenced by clear(), getInstruction(), isValid(), and update().

◆ Kind

StallKind llvm::mca::StallInfo::Kind

Definition at line 39 of file InOrderIssueStage.h.

Referenced by clear(), getStallKind(), and update().


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