LLVM  10.0.0svn
Public Member Functions | List of all members
llvm::mca::InstructionBase Class Reference

Base class for instructions consumed by the simulation pipeline. More...

#include "llvm/MCA/Instruction.h"

Inheritance diagram for llvm::mca::InstructionBase:
Inheritance graph
[legend]

Public Member Functions

 InstructionBase (const InstrDesc &D)
 
SmallVectorImpl< WriteState > & getDefs ()
 
const ArrayRef< WriteStategetDefs () const
 
SmallVectorImpl< ReadState > & getUses ()
 
const ArrayRef< ReadStategetUses () const
 
const InstrDescgetDesc () const
 
unsigned getLatency () const
 
unsigned getNumMicroOps () const
 
bool hasDependentUsers () const
 
unsigned getNumUsers () const
 
bool isOptimizableMove () const
 
void setOptimizableMove ()
 
bool isMemOp () const
 

Detailed Description

Base class for instructions consumed by the simulation pipeline.

This class tracks data dependencies as well as generic properties of the instruction.

Definition at line 394 of file Instruction.h.

Constructor & Destructor Documentation

◆ InstructionBase()

llvm::mca::InstructionBase::InstructionBase ( const InstrDesc D)
inline

Definition at line 411 of file Instruction.h.

Member Function Documentation

◆ getDefs() [1/2]

SmallVectorImpl<WriteState>& llvm::mca::InstructionBase::getDefs ( )
inline

Definition at line 413 of file Instruction.h.

Referenced by llvm::mca::DispatchStage::DispatchStage().

◆ getDefs() [2/2]

const ArrayRef<WriteState> llvm::mca::InstructionBase::getDefs ( ) const
inline

Definition at line 414 of file Instruction.h.

◆ getDesc()

const InstrDesc& llvm::mca::InstructionBase::getDesc ( ) const
inline

◆ getLatency()

unsigned llvm::mca::InstructionBase::getLatency ( ) const
inline

Definition at line 419 of file Instruction.h.

References llvm::mca::InstrDesc::MaxLatency.

◆ getNumMicroOps()

unsigned llvm::mca::InstructionBase::getNumMicroOps ( ) const
inline

◆ getNumUsers()

unsigned llvm::mca::InstructionBase::getNumUsers ( ) const
inline

Definition at line 427 of file Instruction.h.

References llvm::tgtok::Def.

◆ getUses() [1/2]

SmallVectorImpl<ReadState>& llvm::mca::InstructionBase::getUses ( )
inline

Definition at line 415 of file Instruction.h.

Referenced by llvm::mca::DispatchStage::DispatchStage().

◆ getUses() [2/2]

const ArrayRef<ReadState> llvm::mca::InstructionBase::getUses ( ) const
inline

Definition at line 416 of file Instruction.h.

◆ hasDependentUsers()

bool llvm::mca::InstructionBase::hasDependentUsers ( ) const
inline

◆ isMemOp()

bool llvm::mca::InstructionBase::isMemOp ( ) const
inline

◆ isOptimizableMove()

bool llvm::mca::InstructionBase::isOptimizableMove ( ) const
inline

Definition at line 435 of file Instruction.h.

Referenced by llvm::mca::DispatchStage::DispatchStage().

◆ setOptimizableMove()

void llvm::mca::InstructionBase::setOptimizableMove ( )
inline

Definition at line 436 of file Instruction.h.


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