X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmem%2Fruby%2Fcommon%2FConsumer.cc;h=59605d51b70f26b63137f0e1977fe1b90618acf2;hb=16ac48e6a419b75e6a9e86fab9cd2fd62ef9a574;hp=9f3735709506c9d8cd7b191f03b9bcd5a083e3b0;hpb=39e944546807d3fcde3d5eedc1b6a2a97458f4b1;p=gem5.git diff --git a/src/mem/ruby/common/Consumer.cc b/src/mem/ruby/common/Consumer.cc index 9f3735709..59605d51b 100644 --- a/src/mem/ruby/common/Consumer.cc +++ b/src/mem/ruby/common/Consumer.cc @@ -28,6 +28,8 @@ #include "mem/ruby/common/Consumer.hh" +using namespace std; + void Consumer::scheduleEvent(Cycles timeDelta) { @@ -43,4 +45,9 @@ Consumer::scheduleEventAbsolute(Tick evt_time) em->schedule(evt, evt_time); insertScheduledWakeupTime(evt_time); } + + Tick t = em->clockEdge(); + set::iterator bit = m_scheduled_wakeups.begin(); + set::iterator eit = m_scheduled_wakeups.lower_bound(t); + m_scheduled_wakeups.erase(bit,eit); }