X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fgc.lisp;h=eb7f13dc644382a0daebeb596ee8b1a0d4e48f68;hb=65b5ab7e713d04e0d76bc0ee196374f6e57b922f;hp=9c9856146ae3a74eb95fb729ba9cfa5b3f32c612;hpb=4ec0d70e08ea4b512d45ddbd6c82e8f6a91a914f;p=sbcl.git diff --git a/src/code/gc.lisp b/src/code/gc.lisp index 9c98561..eb7f13d 100644 --- a/src/code/gc.lisp +++ b/src/code/gc.lisp @@ -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