class ReadState

Declaration

class ReadState { /* full declaration omitted */ };

Description

Tracks register operand latency in cycles. A read may be dependent on more than one write. This occurs when some writes only partially update the register associated to this read.

Declared at: llvm/include/llvm/MCA/Instruction.h:227

Method Overview

Methods

ReadState(const llvm::mca::ReadDescriptor& Desc,
          llvm::MCPhysReg RegID)

Declared at: llvm/include/llvm/MCA/Instruction.h:257

Parameters

const llvm::mca::ReadDescriptor& Desc
llvm::MCPhysReg RegID

void cycleEvent()

Declared at: llvm/include/llvm/MCA/Instruction.h:275

const llvm::mca::CriticalDependency&
getCriticalRegDep() const

Declared at: llvm/include/llvm/MCA/Instruction.h:266

const llvm::mca::ReadDescriptor& getDescriptor()
    const

Declared at: llvm/include/llvm/MCA/Instruction.h:262

unsigned int getRegisterFileID() const

Declared at: llvm/include/llvm/MCA/Instruction.h:265

llvm::MCPhysReg getRegisterID() const

Declared at: llvm/include/llvm/MCA/Instruction.h:264

unsigned int getSchedClass() const

Declared at: llvm/include/llvm/MCA/Instruction.h:263

bool isImplicitRead() const

Declared at: llvm/include/llvm/MCA/Instruction.h:270

bool isIndependentFromDef() const

Declared at: llvm/include/llvm/MCA/Instruction.h:272

bool isPending() const

Declared at: llvm/include/llvm/MCA/Instruction.h:268

bool isReadZero() const

Declared at: llvm/include/llvm/MCA/Instruction.h:282

bool isReady() const

Declared at: llvm/include/llvm/MCA/Instruction.h:269

void setDependentWrites(unsigned int Writes)

Declared at: llvm/include/llvm/MCA/Instruction.h:277

Parameters

unsigned int Writes

void setIndependentFromDef()

Declared at: llvm/include/llvm/MCA/Instruction.h:273

void setPRF(unsigned int ID)

Declared at: llvm/include/llvm/MCA/Instruction.h:284

Parameters

unsigned int ID

void setReadZero()

Declared at: llvm/include/llvm/MCA/Instruction.h:283

void writeStartEvent(unsigned int IID,
                     llvm::MCPhysReg RegID,
                     unsigned int Cycles)

Declared at: llvm/include/llvm/MCA/Instruction.h:276

Parameters

unsigned int IID
llvm::MCPhysReg RegID
unsigned int Cycles