summaryrefslogtreecommitdiff
path: root/src/cpu/inorder/resource.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/inorder/resource.cc')
-rw-r--r--src/cpu/inorder/resource.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/cpu/inorder/resource.cc b/src/cpu/inorder/resource.cc
index 8cc8f9fe1..4eab89687 100644
--- a/src/cpu/inorder/resource.cc
+++ b/src/cpu/inorder/resource.cc
@@ -498,3 +498,15 @@ ResourceEvent::description()
return desc.c_str();
}
+
+void
+ResourceEvent::scheduleEvent(int delay)
+{
+ InOrderCPU *cpu = resource->cpu;
+ Tick when = curTick + resource->ticks(delay);
+
+ if (squashed())
+ cpu->reschedule(this, when);
+ else if (!scheduled())
+ cpu->schedule(this, when);
+}