LLVM
8.0.1
|
Tracks register operand latency in cycles. More...
#include "llvm/MCA/Instruction.h"
Public Member Functions | |
ReadState (const ReadDescriptor &Desc, unsigned RegID) | |
const ReadDescriptor & | getDescriptor () const |
unsigned | getSchedClass () const |
unsigned | getRegisterID () const |
unsigned | getRegisterFileID () const |
bool | isReady () const |
bool | isImplicitRead () const |
bool | isIndependentFromDef () const |
void | setIndependentFromDef () |
void | cycleEvent () |
void | writeStartEvent (unsigned Cycles) |
void | setDependentWrites (unsigned Writes) |
bool | isReadZero () const |
void | setReadZero () |
void | setPRF (unsigned ID) |
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.
Definition at line 205 of file Instruction.h.
|
inline |
Definition at line 233 of file Instruction.h.
void llvm::mca::ReadState::cycleEvent | ( | ) |
Definition at line 97 of file Instruction.cpp.
References llvm::mca::UNKNOWN_CYCLES.
|
inline |
Definition at line 238 of file Instruction.h.
|
inline |
Definition at line 241 of file Instruction.h.
|
inline |
Definition at line 240 of file Instruction.h.
References llvm::mca::WriteDescriptor::RegisterID.
Referenced by llvm::mca::RegisterFile::addRegisterRead(), llvm::mca::WriteState::dump(), and llvm::mca::RegisterFile::tryEliminateMove().
|
inline |
Definition at line 239 of file Instruction.h.
References llvm::mca::ReadDescriptor::SchedClassID.
|
inline |
Definition at line 244 of file Instruction.h.
References llvm::mca::ReadDescriptor::isImplicitRead().
|
inline |
Definition at line 246 of file Instruction.h.
Referenced by llvm::mca::RegisterFile::addRegisterRead().
|
inline |
Definition at line 243 of file Instruction.h.
Referenced by llvm::mca::Instruction::cycleEvent(), and llvm::mca::Instruction::update().
|
inline |
Definition at line 256 of file Instruction.h.
|
inline |
Definition at line 251 of file Instruction.h.
Referenced by llvm::mca::RegisterFile::addRegisterRead().
|
inline |
Definition at line 247 of file Instruction.h.
Referenced by llvm::mca::InstrBuilder::createInstruction().
|
inline |
Definition at line 258 of file Instruction.h.
Referenced by llvm::mca::RegisterFile::addRegisterRead().
|
inline |
Definition at line 257 of file Instruction.h.
Referenced by llvm::mca::RegisterFile::addRegisterRead(), and llvm::mca::RegisterFile::tryEliminateMove().
void llvm::mca::ReadState::writeStartEvent | ( | unsigned | Cycles | ) |
Definition at line 22 of file Instruction.cpp.
References assert(), llvm::max(), and llvm::mca::UNKNOWN_CYCLES.
Referenced by llvm::mca::WriteState::addUser(), and llvm::mca::WriteState::onInstructionIssued().