18 #ifndef LLVM_MCA_EXECUTE_STAGE_H 19 #define LLVM_MCA_EXECUTE_STAGE_H 36 Error issueReadyInstructions();
80 #endif // LLVM_MCA_EXECUTE_STAGE_H
This class represents lattice values for constants.
void notifyInstructionReady(const InstRef &IR) const
bool isAvailable(const InstRef &IR) const override
Returns true if it can execute IR during this cycle.
An InstRef contains both a SourceMgr index and Instruction pair.
Error cycleStart() override
Called once at the start of each cycle.
void notifyResourceAvailable(const ResourceRef &RR) const
void notifyInstructionIssued(const InstRef &IR, MutableArrayRef< std::pair< ResourceRef, ResourceCycles >> Used) const
This file defines a stage.
MutableArrayRef - Represent a mutable reference to an array (0 or more elements consecutively in memo...
Class Scheduler is responsible for issuing instructions to pipeline resources.
void notifyReservedOrReleasedBuffers(const InstRef &IR, bool Reserved) const
std::pair< uint64_t, uint64_t > ResourceRef
A resource unit identifier.
bool hasWorkToComplete() const override
Returns true if some instructions are still executing this stage.
void notifyInstructionExecuted(const InstRef &IR) const
ExecuteStage(Scheduler &S)
This file defines abstractions used by the Pipeline to model register reads, register writes and inst...
Lightweight error class with error context and mandatory checking.
A scheduler for Processor Resource Units and Processor Resource Groups.
Error execute(InstRef &IR) override
The primary action that this stage performs on instruction IR.
Statically lint checks LLVM IR