LLVM: llvm::mca::Instruction Class Reference (original) (raw)

An instruction propagated through the simulated instruction pipeline. More...

#include "[llvm/MCA/Instruction.h](MCA%5F2Instruction%5F8h%5Fsource.html)"

Public Member Functions
Instruction (const InstrDesc &D, const unsigned Opcode)
LLVM_ABI void reset ()
unsigned getRCUTokenID () const
unsigned getLSUTokenID () const
void setLSUTokenID (unsigned LSUTok)
uint64_t getUsedBuffers () const
void setUsedBuffers (uint64_t Mask)
void clearUsedBuffers ()
int getCyclesLeft () const
LLVM_ABI void dispatch (unsigned RCUTokenID)
LLVM_ABI void execute (unsigned IID)
LLVM_ABI void update ()
LLVM_ABI bool updateDispatched ()
LLVM_ABI bool updatePending ()
bool isInvalid () const
bool isDispatched () const
bool isPending () const
bool isReady () const
bool isExecuting () const
bool isExecuted () const
bool isRetired () const
bool isEliminated () const
LLVM_ABI void forceExecuted ()
void setEliminated ()
void retire ()
const CriticalDependency & getCriticalRegDep () const
const CriticalDependency & getCriticalMemDep () const
LLVM_ABI const CriticalDependency & computeCriticalRegDep ()
void setCriticalMemDep (const CriticalDependency &MemDep)
uint64_t getCriticalResourceMask () const
void setCriticalResourceMask (uint64_t ResourceMask)
LLVM_ABI void cycleEvent ()
Public Member Functions inherited from llvm::mca::InstructionBase
InstructionBase (const InstrDesc &D, const unsigned Opcode)
SmallVectorImpl< WriteState > & getDefs ()
ArrayRef< WriteState > getDefs () const
SmallVectorImpl< ReadState > & getUses ()
ArrayRef< ReadState > getUses () const
const InstrDesc & getDesc () const
unsigned getLatency () const
unsigned getNumMicroOps () const
unsigned getOpcode () const
bool isALoadBarrier () const
bool isAStoreBarrier () const
void setLoadBarrier (bool IsBarrier)
void setStoreBarrier (bool IsBarrier)
const MCAOperand * getOperand (const unsigned Idx) const
Return the MCAOperand which corresponds to index Idx within the original MCInst.
unsigned getNumOperands () const
void addOperand (const MCAOperand Op)
bool hasDependentUsers () const
unsigned getNumUsers () const
bool isOptimizableMove () const
void setOptimizableMove ()
void clearOptimizableMove ()
bool isMemOp () const
void setMayLoad (bool newVal)
void setMayStore (bool newVal)
void setHasSideEffects (bool newVal)
void setBeginGroup (bool newVal)
void setEndGroup (bool newVal)
void setRetireOOO (bool newVal)
bool getMayLoad () const
bool getMayStore () const
bool getHasSideEffects () const
bool getBeginGroup () const
bool getEndGroup () const
bool getRetireOOO () const

An instruction propagated through the simulated instruction pipeline.

This class is used to monitor changes to the internal state of instructions that are sent to the various components of the simulated hardware pipeline.

Definition at line 603 of file Instruction.h.

clearUsedBuffers()

void llvm::mca::Instruction::clearUsedBuffers ( ) inline

computeCriticalRegDep()

cycleEvent()

void llvm::mca::Instruction::cycleEvent ( )

dispatch()

void llvm::mca::Instruction::dispatch ( unsigned RCUTokenID )

execute()

void llvm::mca::Instruction::execute ( unsigned IID )

forceExecuted()

void llvm::mca::Instruction::forceExecuted ( )

getCriticalMemDep()

getCriticalRegDep()

getCriticalResourceMask()

uint64_t llvm::mca::Instruction::getCriticalResourceMask ( ) const inline

getCyclesLeft()

int llvm::mca::Instruction::getCyclesLeft ( ) const inline

getLSUTokenID()

unsigned llvm::mca::Instruction::getLSUTokenID ( ) const inline

getRCUTokenID()

unsigned llvm::mca::Instruction::getRCUTokenID ( ) const inline

getUsedBuffers()

uint64_t llvm::mca::Instruction::getUsedBuffers ( ) const inline

isDispatched()

bool llvm::mca::Instruction::isDispatched ( ) const inline

isEliminated()

bool llvm::mca::Instruction::isEliminated ( ) const inline

isExecuted()

bool llvm::mca::Instruction::isExecuted ( ) const inline

isExecuting()

bool llvm::mca::Instruction::isExecuting ( ) const inline

isInvalid()

bool llvm::mca::Instruction::isInvalid ( ) const inline

isPending()

bool llvm::mca::Instruction::isPending ( ) const inline

isReady()

bool llvm::mca::Instruction::isReady ( ) const inline

isRetired()

bool llvm::mca::Instruction::isRetired ( ) const inline

reset()

void llvm::mca::Instruction::reset ( )

retire()

void llvm::mca::Instruction::retire ( ) inline

setCriticalMemDep()

setCriticalResourceMask()

void llvm::mca::Instruction::setCriticalResourceMask ( uint64_t ResourceMask) inline

setEliminated()

void llvm::mca::Instruction::setEliminated ( ) inline

setLSUTokenID()

void llvm::mca::Instruction::setLSUTokenID ( unsigned LSUTok) inline

setUsedBuffers()

void llvm::mca::Instruction::setUsedBuffers ( uint64_t Mask) inline

update()

void llvm::mca::Instruction::update ( )

updateDispatched()

bool llvm::mca::Instruction::updateDispatched ( )

updatePending()

bool llvm::mca::Instruction::updatePending ( )

The documentation for this class was generated from the following files: