LLVM  12.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::mca::InstrDesc Struct Reference

An instruction descriptor. More...

#include "llvm/MCA/Instruction.h"

Collaboration diagram for llvm::mca::InstrDesc:
Collaboration graph

Public Member Functions

bool isZeroLatency () const
 InstrDesc ()=default
 InstrDesc (const InstrDesc &Other)=delete
InstrDescoperator= (const InstrDesc &Other)=delete

Public Attributes

SmallVector< WriteDescriptor, 4 > Writes
SmallVector< ReadDescriptor, 4 > Reads
SmallVector< std::pair< uint64_t, ResourceUsage >, 4 > Resources
uint64_t UsedBuffers
uint64_t UsedProcResUnits
uint64_t UsedProcResGroups
unsigned MaxLatency
unsigned NumMicroOps
unsigned SchedClassID
bool MayLoad
bool MayStore
bool HasSideEffects
bool BeginGroup
bool EndGroup
bool MustIssueImmediately

Detailed Description

An instruction descriptor.

Definition at line 348 of file Instruction.h.

Constructor & Destructor Documentation

◆ InstrDesc() [1/2]

llvm::mca::InstrDesc::InstrDesc ( )

◆ InstrDesc() [2/2]

llvm::mca::InstrDesc::InstrDesc ( const InstrDesc Other)

Member Function Documentation

◆ isZeroLatency()

bool llvm::mca::InstrDesc::isZeroLatency ( ) const

◆ operator=()

InstrDesc& llvm::mca::InstrDesc::operator= ( const InstrDesc Other)

Member Data Documentation

◆ BeginGroup

bool llvm::mca::InstrDesc::BeginGroup

Definition at line 376 of file Instruction.h.

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

◆ EndGroup

bool llvm::mca::InstrDesc::EndGroup

Definition at line 377 of file Instruction.h.

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

◆ HasSideEffects

bool llvm::mca::InstrDesc::HasSideEffects

Definition at line 375 of file Instruction.h.

Referenced by llvm::mca::LSUnit::dispatch().

◆ MaxLatency

unsigned llvm::mca::InstrDesc::MaxLatency

◆ MayLoad

bool llvm::mca::InstrDesc::MayLoad

◆ MayStore

bool llvm::mca::InstrDesc::MayStore

◆ MustIssueImmediately

bool llvm::mca::InstrDesc::MustIssueImmediately

◆ NumMicroOps

unsigned llvm::mca::InstrDesc::NumMicroOps

◆ Reads

SmallVector<ReadDescriptor, 4> llvm::mca::InstrDesc::Reads

◆ Resources

SmallVector<std::pair<uint64_t, ResourceUsage>, 4> llvm::mca::InstrDesc::Resources

◆ SchedClassID

unsigned llvm::mca::InstrDesc::SchedClassID

Definition at line 371 of file Instruction.h.

◆ UsedBuffers

uint64_t llvm::mca::InstrDesc::UsedBuffers

◆ UsedProcResGroups

uint64_t llvm::mca::InstrDesc::UsedProcResGroups

◆ UsedProcResUnits

uint64_t llvm::mca::InstrDesc::UsedProcResUnits

Definition at line 360 of file Instruction.h.

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

◆ Writes

SmallVector<WriteDescriptor, 4> llvm::mca::InstrDesc::Writes

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