about summary refs log tree commit diff stats
path: root/mu.arc.t
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2014-11-06 10:28:46 -0800
committerKartik K. Agaram <vc@akkartik.com>2014-11-06 10:28:46 -0800
commitc6ea9df84135b5accfdaf554c665a8dc49a00e21 (patch)
tree85cb4aa45d1a64ad05e9b2f58cf0d20f7905471c /mu.arc.t
parent7d743c6061d9c65bf172fcfa8a3354d70aa98c7f (diff)
downloadmu-c6ea9df84135b5accfdaf554c665a8dc49a00e21.tar.gz
232
Diffstat (limited to 'mu.arc.t')
-rw-r--r--mu.arc.t20
1 files changed, 20 insertions, 0 deletions
diff --git a/mu.arc.t b/mu.arc.t
index a6d79583..ecfcb643 100644
--- a/mu.arc.t
+++ b/mu.arc.t
@@ -1652,6 +1652,26 @@
     ("run" "f2 0")
   ))
 
+(reset)
+(new-trace "scheduler-alternate")
+(add-fns
+  '((f1
+      ((1 integer) <- copy (3 literal))
+      ((1 integer) <- copy (3 literal)))
+    (f2
+      ((2 integer) <- copy (4 literal))
+      ((2 integer) <- copy (4 literal)))))
+(let old-scheduling-interval scheduling-interval*
+  (= scheduling-interval* 1)
+  (after (run 'f1 'f2)
+     (= scheduling-interval* old-scheduling-interval)))
+(check-trace-contents "scheduler alternates between routines"
+  '(("run" "f1 0")
+    ("run" "f2 0")
+    ("run" "f1 1")
+    ("run" "f2 1")
+  ))
+
 ; The scheduler needs to keep track of the call stack for each routine.
 ; Eventually we'll want to save this information in mu's address space itself,
 ; along with the types array, the magic buffers for args and oargs, and so on.