LLVM 20.0.0git
|
A reference to a register write. More...
#include "llvm/MCA/HardwareUnits/RegisterFile.h"
Public Member Functions | |
WriteRef () | |
WriteRef (unsigned SourceIndex, WriteState *WS) | |
unsigned | getSourceIndex () const |
unsigned | getWriteBackCycle () const |
const WriteState * | getWriteState () const |
WriteState * | getWriteState () |
unsigned | getWriteResourceID () const |
MCPhysReg | getRegisterID () const |
void | commit () |
void | notifyExecuted (unsigned Cycle) |
bool | hasKnownWriteBackCycle () const |
bool | isWriteZero () const |
bool | isValid () const |
bool | isAvailable () const |
Returns true if this register write has been executed, and the new register value is therefore available to users. | |
bool | operator== (const WriteRef &Other) const |
void | dump () const |
A reference to a register write.
This class is mainly used by the register file to describe register mappings. It correlates a register write to the source index of the defining instruction.
Definition at line 38 of file RegisterFile.h.
|
inline |
Definition at line 48 of file RegisterFile.h.
llvm::mca::WriteRef::WriteRef | ( | unsigned | SourceIndex, |
WriteState * | WS | ||
) |
Definition at line 27 of file RegisterFile.cpp.
void llvm::mca::WriteRef::commit | ( | ) |
Definition at line 31 of file RegisterFile.cpp.
References assert(), llvm::mca::WriteState::getRegisterID(), llvm::mca::WriteState::getWriteResourceID(), and llvm::mca::WriteState::isExecuted().
Referenced by llvm::mca::RegisterFile::removeRegisterWrite().
void llvm::mca::WriteRef::dump | ( | ) | const |
Definition at line 709 of file RegisterFile.cpp.
References llvm::dbgs(), llvm::mca::WriteState::dump(), getSourceIndex(), getWriteState(), and isValid().
MCPhysReg llvm::mca::WriteRef::getRegisterID | ( | ) | const |
Definition at line 58 of file RegisterFile.cpp.
References llvm::mca::WriteState::getRegisterID().
|
inline |
Definition at line 53 of file RegisterFile.h.
Referenced by llvm::mca::RegisterFile::addRegisterWrite(), llvm::mca::RegisterFile::collectWrites(), dump(), and isValid().
unsigned llvm::mca::WriteRef::getWriteBackCycle | ( | ) | const |
Definition at line 490 of file RegisterFile.cpp.
References assert(), llvm::mca::WriteState::getCyclesLeft(), and hasKnownWriteBackCycle().
Referenced by llvm::mca::RegisterFile::getElapsedCyclesFromWriteBack().
unsigned llvm::mca::WriteRef::getWriteResourceID | ( | ) | const |
Definition at line 52 of file RegisterFile.cpp.
References llvm::mca::WriteState::getWriteResourceID().
Referenced by llvm::mca::RegisterFile::collectWrites().
|
inline |
Definition at line 57 of file RegisterFile.h.
|
inline |
Definition at line 56 of file RegisterFile.h.
Referenced by llvm::mca::RegisterFile::addRegisterWrite(), llvm::mca::RegisterFile::collectWrites(), dump(), isWriteZero(), llvm::mca::RegisterFile::onInstructionExecuted(), and llvm::mca::RegisterFile::removeRegisterWrite().
bool llvm::mca::WriteRef::hasKnownWriteBackCycle | ( | ) | const |
Definition at line 43 of file RegisterFile.cpp.
References llvm::mca::WriteState::isExecuted(), and isValid().
Referenced by llvm::mca::RegisterFile::collectWrites(), llvm::mca::RegisterFile::getElapsedCyclesFromWriteBack(), getWriteBackCycle(), and isAvailable().
|
inline |
Returns true if this register write has been executed, and the new register value is therefore available to users.
Definition at line 70 of file RegisterFile.h.
References hasKnownWriteBackCycle().
|
inline |
Definition at line 66 of file RegisterFile.h.
References getSourceIndex().
Referenced by dump(), hasKnownWriteBackCycle(), and isWriteZero().
bool llvm::mca::WriteRef::isWriteZero | ( | ) | const |
Definition at line 47 of file RegisterFile.cpp.
References assert(), getWriteState(), isValid(), and llvm::mca::WriteState::isWriteZero().
void llvm::mca::WriteRef::notifyExecuted | ( | unsigned | Cycle | ) |
Definition at line 38 of file RegisterFile.cpp.
References assert(), and llvm::mca::WriteState::isExecuted().
Referenced by llvm::mca::RegisterFile::onInstructionExecuted().
Definition at line 72 of file RegisterFile.h.
References llvm::Other.