about summary refs log tree commit diff stats
path: root/sys.arc
diff options
context:
space:
mode:
Diffstat (limited to 'sys.arc')
-rw-r--r--sys.arc58
1 files changed, 0 insertions, 58 deletions
diff --git a/sys.arc b/sys.arc
deleted file mode 100644
index b5f9c436..00000000
--- a/sys.arc
+++ /dev/null
@@ -1,58 +0,0 @@
-(load "mu.arc")
-
-; memory map: 0-2 for convenience constants
-(enq (fn ()
-       (run `(((0 integer) <- literal 0)
-              ((1 integer) <- literal 1)
-              ((2 integer) <- literal 2))))
-     initialization-fns*)
-
-(enq (fn ()
-       (build-type-table)
-     initialization-fns*)
-
-(= Free 3)
-(= Type-array Free)
-(def build-type-table ()
-  (allocate-type-array)
-  (build-types)
-  (fill-in-type-array))
-
-(def allocate-type-array ()
-  (= memory*.Free len.types*)
-  (++ Free)
-  (++ Free len.types*))
-
-(def build-types ()
-  (each type types*  ; todo
-    (
-
-(def sizeof (typeinfo)
-  (if (~or typeinfo!record typeinfo!array)
-        typeinfo!size
-      typeinfo!record
-        (sum idfn
-          (accum yield
-            (each elem typeinfo!elems
-              (yield (sizeof type*.elem)))))
-      typeinfo!array
-        (* (sizeof (type* typeinfo!elem))
-           (
-
-
-;; 'new' - simple slab allocator. Intended only to carve out isolated memory
-;; for different threads/routines as they request.
-; memory map: 3 for root custodian (size 1)
-(= Root_custodian 3)
-(= Allocator_start 1000)  ; lower locations reserved
-
-(enq (fn ()
-       (run `(((,Root_custodian location) <- literal ,Allocator_start))))
-     initialization-fns*)
-
-; (type-addr val) <- new (custodian x), (type t)
-; memory map: 4-5 locals for slab allocator
-(init-fn new
-  ((4 integer-address) <- copy (3 location))
-  ((3 location) <- add (3 location) (1 integer))
-  (reply (4 integer-address)))