From: Gabe Black Date: Tue, 7 Nov 2006 00:52:32 +0000 (-0500) Subject: Merge zizzer.eecs.umich.edu:/bk/newmem/ X-Git-Tag: m5_2.0_beta2~53^2~44 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=02abca6b9e4e21d8d89eb83eabab3be8ac10c9d8;p=gem5.git Merge zizzer.eecs.umich.edu:/bk/newmem/ into zeep.eecs.umich.edu:/home/gblack/m5/newmemmemops src/SConscript: SCCS merged --HG-- extra : convert_revision : f130c8a2d33f58d857e5d5a02bb9698c1bceb23b --- 02abca6b9e4e21d8d89eb83eabab3be8ac10c9d8 diff --cc src/cpu/base.hh index 79d22c992,df665ed23..9257778ef --- a/src/cpu/base.hh +++ b/src/cpu/base.hh @@@ -77,11 -73,24 +77,25 @@@ class BaseCPU : public MemObjec inline Tick cycles(int numCycles) const { return clock * numCycles; } inline Tick curCycle() const { return curTick / clock; } + /** The next cycle the CPU should be scheduled, given a cache + * access or quiesce event returning on this cycle. This function + * may return curTick if the CPU should run on the current cycle. + */ + Tick nextCycle(); + + /** The next cycle the CPU should be scheduled, given a cache + * access or quiesce event returning on the given Tick. This + * function may return curTick if the CPU should run on the + * current cycle. + * @param begin_tick The tick that the event is completing on. + */ + Tick nextCycle(Tick begin_tick); + #if FULL_SYSTEM protected: - uint64_t interrupts[TheISA::NumInterruptLevels]; - uint64_t intstatus; +// uint64_t interrupts[TheISA::NumInterruptLevels]; +// uint64_t intstatus; + TheISA::Interrupts interrupts; public: virtual void post_interrupt(int int_num, int index);