"1.0.41.2": threads: Add memory-barrier framework.
[sbcl.git] / src / code / gc.lisp
index 9c98561..eb7f13d 100644 (file)
@@ -346,7 +346,9 @@ collection is initiated. This can be set with SETF."
             (number-of-gcs int)
             (number-of-gcs-before-promotion int)
             (cum-sum-bytes-allocated unsigned-long)
-            (minimum-age-before-gc double)))
+            (minimum-age-before-gc double)
+            ;; `struct lutex *' or `void *', depending.
+            (lutexes (* char))))
 
 #!+gencgc
 (define-alien-variable generations
@@ -358,22 +360,24 @@ collection is initiated. This can be set with SETF."
                 (defun ,(symbolicate "GENERATION-" slot) (generation)
                   #!+sb-doc
                   ,doc
+                  #!+gencgc
                   (declare (generation-index generation))
                   #!-gencgc
                   (declare (ignore generation))
                   #!-gencgc
                   (error "~S is a GENCGC only function and unavailable in this build"
-                         ',name)
+                         ',slot)
                   #!+gencgc
                   (slot (deref generations generation) ',slot))
                 ,@(when setfp
                         `((defun (setf ,(symbolicate "GENERATION-" slot)) (value generation)
+                            #!+gencgc
                             (declare (generation-index generation))
                             #!-gencgc
                             (declare (ignore value generation))
                             #!-gencgc
                             (error "(SETF ~S) is a GENCGC only function and unavailable in this build"
-                                   ',name)
+                                   ',slot)
                             #!+gencgc
                             (setf (slot (deref generations generation) ',slot) value)))))))
   (def bytes-consed-between-gcs
@@ -415,6 +419,7 @@ objects allocated to the generation have seen younger objects promoted to it.
 Available on GENCGC platforms only.
 
 Experimental: interface subject to change."
+    #!+gencgc
     (declare (generation-index generation))
     #!-gencgc (declare (ignore generation))
     #!-gencgc