about summary refs log tree commit diff stats
path: root/mu.arc
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2014-10-05 10:36:09 -0700
committerKartik K. Agaram <vc@akkartik.com>2014-10-05 10:36:09 -0700
commit186e1884028779dc41f5ba1fd563db2d957d1de4 (patch)
treeb5feed7708cb15f0372d8ca81dc758b75b02288f /mu.arc
parentb982e863fa1d964de07eade726e9bd3d04225cbf (diff)
downloadmu-186e1884028779dc41f5ba1fd563db2d957d1de4.tar.gz
98 - getting sick of loading literals before use
Diffstat (limited to 'mu.arc')
-rw-r--r--mu.arc11
1 files changed, 7 insertions, 4 deletions
diff --git a/mu.arc b/mu.arc
index f1067200..57c69d1f 100644
--- a/mu.arc
+++ b/mu.arc
@@ -113,10 +113,13 @@
 
 (def m (loc)  ; read memory, respecting metadata
 ;?   (prn "m " loc " " sz.loc)
-  (if (is 1 sz.loc)
-    (memory* (addr loc))
-    (annotate 'record
-              (map memory* (addrs (addr loc) sz.loc)))))
+  (if (is 'literal ty.loc)
+        (v loc)
+      (is 1 sz.loc)
+        (memory* (addr loc))
+      :else
+        (annotate 'record
+                  (map memory* (addrs (addr loc) sz.loc)))))
 
 (def setm (loc val)  ; set memory, respecting metadata
 ;?   (prn "setm " loc " " val)