Go to the documentation of this file.
34 #ifndef __REGISTER_FILE_HH__
35 #define __REGISTER_FILE_HH__
50 struct RegisterFileParams;
67 virtual bool regBusy(
int idx)
const;
68 virtual void markReg(
int regIdx,
bool value);
140 virtual std::string
dump()
const;
172 #endif // __REGISTER_FILE_HH__
MarkRegFreeScbEvent(RegisterFile *_rf, int _regIdx)
static const FlagsType AutoDelete
virtual bool operandReadComplete(Wavefront *w, GPUDynInstPtr ii)
virtual void enqRegBusyEvent(uint32_t regIdx, uint64_t delay)
virtual void waveExecuteInst(Wavefront *w, GPUDynInstPtr ii)
Stats::Scalar registerWrites
RegisterEvent(RegisterFile *_rf, int _regIdx)
virtual void scheduleReadOperands(Wavefront *w, GPUDynInstPtr ii)
virtual bool operandsReady(Wavefront *w, GPUDynInstPtr ii) const
This is a simple scalar statistic, like a counter.
virtual void scheduleWriteOperands(Wavefront *w, GPUDynInstPtr ii)
virtual std::string dump() const
Stats::Scalar registerReads
virtual bool regBusy(int idx) const
void setFlags(Flags _flags)
virtual bool canScheduleWriteOperandsFromLoad(Wavefront *w, GPUDynInstPtr ii)
virtual void scheduleWriteOperandsFromLoad(Wavefront *w, GPUDynInstPtr ii)
virtual bool canScheduleReadOperands(Wavefront *w, GPUDynInstPtr ii)
RegisterFile::RegisterFileStats stats
virtual void markReg(int regIdx, bool value)
virtual void enqRegFreeEvent(uint32_t regIdx, uint64_t delay)
std::shared_ptr< GPUDynInst > GPUDynInstPtr
RegisterFile(const RegisterFileParams &p)
virtual bool canScheduleWriteOperands(Wavefront *w, GPUDynInstPtr ii)
RegisterFileStats(Stats::Group *parent)
ComputeUnit * computeUnit
virtual void setParent(ComputeUnit *_computeUnit)
MarkRegBusyScbEvent(RegisterFile *_rf, int _regIdx)
virtual void dispatchInstruction(GPUDynInstPtr ii)
Abstract superclass for simulation objects.
Generated on Tue Mar 23 2021 19:41:27 for gem5 by doxygen 1.8.17