LLVM 22.0.0git
llvm::mca::InstrDesc Struct Reference

An instruction descriptor. More...

#include "llvm/MCA/Instruction.h"

Public Member Functions

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

Public Attributes

SmallVector< WriteDescriptor, 2 > 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
unsigned MustIssueImmediately: 1
unsigned IsRecyclable: 1
unsigned HasPartiallyOverlappingGroups: 1

Detailed Description

An instruction descriptor.

Definition at line 452 of file Instruction.h.

Constructor & Destructor Documentation

◆ InstrDesc() [1/2]

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

Referenced by InstrDesc(), and operator=().

◆ InstrDesc() [2/2]

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

References InstrDesc(), and llvm::Other.

Member Function Documentation

◆ isZeroLatency()

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

Definition at line 490 of file Instruction.h.

References MaxLatency, and Resources.

◆ operator=()

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

References InstrDesc(), and llvm::Other.

Member Data Documentation

◆ HasPartiallyOverlappingGroups

unsigned llvm::mca::InstrDesc::HasPartiallyOverlappingGroups

Definition at line 487 of file Instruction.h.

◆ IsRecyclable

unsigned llvm::mca::InstrDesc::IsRecyclable

Definition at line 484 of file Instruction.h.

◆ MaxLatency

unsigned llvm::mca::InstrDesc::MaxLatency

Definition at line 469 of file Instruction.h.

Referenced by isZeroLatency().

◆ MustIssueImmediately

unsigned llvm::mca::InstrDesc::MustIssueImmediately

Definition at line 479 of file Instruction.h.

◆ NumMicroOps

unsigned llvm::mca::InstrDesc::NumMicroOps

Definition at line 471 of file Instruction.h.

◆ Reads

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

Definition at line 454 of file Instruction.h.

◆ Resources

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

Definition at line 458 of file Instruction.h.

Referenced by isZeroLatency().

◆ SchedClassID

unsigned llvm::mca::InstrDesc::SchedClassID

Definition at line 475 of file Instruction.h.

◆ UsedBuffers

uint64_t llvm::mca::InstrDesc::UsedBuffers

Definition at line 461 of file Instruction.h.

◆ UsedProcResGroups

uint64_t llvm::mca::InstrDesc::UsedProcResGroups

Definition at line 467 of file Instruction.h.

◆ UsedProcResUnits

uint64_t llvm::mca::InstrDesc::UsedProcResUnits

Definition at line 464 of file Instruction.h.

◆ Writes

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

Definition at line 453 of file Instruction.h.


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