a step along the way to setting address space parameters in just one place
authorWilliam Harold Newman <william.newman@airmail.net>
Sat, 7 Oct 2000 15:00:13 +0000 (15:00 +0000)
committerWilliam Harold Newman <william.newman@airmail.net>
Sat, 7 Oct 2000 15:00:13 +0000 (15:00 +0000)
src/compiler/generic/genesis.lisp
src/compiler/x86/alloc.lisp
src/compiler/x86/parms.lisp

index 6dfe6c4..277f0c6 100644 (file)
@@ -3028,11 +3028,11 @@ initially undefined function references:~2%")
       (finalize-load-time-value-noise)
 
       ;; Tell the target Lisp how much stuff we've allocated.
       (finalize-load-time-value-noise)
 
       ;; Tell the target Lisp how much stuff we've allocated.
-      (cold-set '*read-only-space-free-pointer*
+      (cold-set 'sb!vm:*read-only-space-free-pointer*
                (allocate-descriptor *read-only* 0 sb!vm:even-fixnum-type))
                (allocate-descriptor *read-only* 0 sb!vm:even-fixnum-type))
-      (cold-set '*static-space-free-pointer*
+      (cold-set 'sb!vm:*static-space-free-pointer*
                (allocate-descriptor *static* 0 sb!vm:even-fixnum-type))
                (allocate-descriptor *static* 0 sb!vm:even-fixnum-type))
-      (cold-set '*initial-dynamic-space-free-pointer*
+      (cold-set 'sb!vm:*initial-dynamic-space-free-pointer*
                (allocate-descriptor *dynamic* 0 sb!vm:even-fixnum-type))
       (/show "done setting free pointers")
 
                (allocate-descriptor *dynamic* 0 sb!vm:even-fixnum-type))
       (/show "done setting free pointers")
 
index 8e01287..11c4d78 100644 (file)
      ;;   -- WHN 19990916
      ;;
      ;; FIXME: should have a check for overflow of static space
      ;;   -- WHN 19990916
      ;;
      ;; FIXME: should have a check for overflow of static space
-     (load-symbol-value temp sb!impl::*static-space-free-pointer*)
+     (load-symbol-value temp sb!vm:*static-space-free-pointer*)
      (inst lea result (make-ea :byte :base temp :disp other-pointer-type))
      (inst add temp boxed)
      (inst add temp unboxed)
      (inst lea result (make-ea :byte :base temp :disp other-pointer-type))
      (inst add temp boxed)
      (inst add temp unboxed)
-     (store-symbol-value temp sb!impl::*static-space-free-pointer*)
+     (store-symbol-value temp sb!vm:*static-space-free-pointer*)
      (inst shl boxed (- type-bits word-shift))
      (inst or boxed code-header-type)
      (storew boxed result 0 other-pointer-type)
      (inst shl boxed (- type-bits word-shift))
      (inst or boxed code-header-type)
      (storew boxed result 0 other-pointer-type)
index 82abe4d..7da5ea4 100644 (file)
     sb!impl::fdefinition-object
 
     ;; free pointers
     sb!impl::fdefinition-object
 
     ;; free pointers
-    sb!impl::*read-only-space-free-pointer*
-    sb!impl::*static-space-free-pointer*
-    sb!impl::*initial-dynamic-space-free-pointer*
+    ;; 
+    ;; Note that these are FIXNUM word counts, not (as one might
+    ;; expect) byte counts or SAPs. The reason seems to be that by
+    ;; representing them this way, we can avoid consing bignums. 
+    ;; -- WHN 2000-10-02
+    *read-only-space-free-pointer*
+    *static-space-free-pointer*
+    *initial-dynamic-space-free-pointer*
 
     ;; things needed for non-local exit
     sb!impl::*current-catch-block*
 
     ;; things needed for non-local exit
     sb!impl::*current-catch-block*