diff options
Diffstat (limited to 'src/cpu/inorder/resource_pool.cc')
-rw-r--r-- | src/cpu/inorder/resource_pool.cc | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/cpu/inorder/resource_pool.cc b/src/cpu/inorder/resource_pool.cc index 97ea889fd..e199d2bc2 100644 --- a/src/cpu/inorder/resource_pool.cc +++ b/src/cpu/inorder/resource_pool.cc @@ -541,13 +541,8 @@ void ResourcePool::ResPoolEvent::scheduleEvent(int delay) { InOrderCPU *cpu = resPool->cpu; - Tick when = cpu->nextCycle(curTick + cpu->ticks(delay)); - - if (squashed()) { - cpu->reschedule(this, when); - } else if (!scheduled()) { - cpu->schedule(this, when); - } + assert(!scheduled() || squashed()); + cpu->reschedule(this, cpu->nextCycle(curTick + cpu->ticks(delay)), true); } /** Unschedule resource event, regardless of its current state. */ |