Go to the documentation of this file.
37 #ifndef __REGISTER_FILE_HH__
38 #define __REGISTER_FILE_HH__
53 struct RegisterFileParams;
71 virtual bool regBusy(
int idx)
const;
72 virtual void markReg(
int regIdx,
bool value);
144 virtual std::string
dump()
const;
171 #endif // __REGISTER_FILE_HH__
MarkRegFreeScbEvent(RegisterFile *_rf, int _regIdx)
static const FlagsType AutoDelete
Stats::Scalar registerReads
virtual bool operandReadComplete(Wavefront *w, GPUDynInstPtr ii)
virtual void enqRegBusyEvent(uint32_t regIdx, uint64_t delay)
virtual void waveExecuteInst(Wavefront *w, GPUDynInstPtr ii)
RegisterFile(const RegisterFileParams *p)
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
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)
virtual void markReg(int regIdx, bool value)
virtual void regStats() override
Callback to set stat parameters.
virtual void enqRegFreeEvent(uint32_t regIdx, uint64_t delay)
std::shared_ptr< GPUDynInst > GPUDynInstPtr
Stats::Scalar registerWrites
virtual bool canScheduleWriteOperands(Wavefront *w, GPUDynInstPtr ii)
ComputeUnit * computeUnit
virtual void setParent(ComputeUnit *_computeUnit)
MarkRegBusyScbEvent(RegisterFile *_rf, int _regIdx)
virtual void dispatchInstruction(GPUDynInstPtr ii)
Abstract superclass for simulation objects.
Generated on Wed Sep 30 2020 14:02:12 for gem5 by doxygen 1.8.17