X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fgc.lisp;h=b0f5fbc9b900123bb61b35942e0765486c93d691;hb=6129b1ebc5125c57d6446c061155f5f653f41725;hp=b477d981c36b5e18ffefacfaca9ad6b5e7f18a7a;hpb=219cc40793f9c82fb943b29a1846f898f4f9de1e;p=sbcl.git diff --git a/src/code/gc.lisp b/src/code/gc.lisp index b477d98..b0f5fbc 100644 --- a/src/code/gc.lisp +++ b/src/code/gc.lisp @@ -164,16 +164,17 @@ run in any thread.") (old %gc-logfile)) (setf %gc-logfile new) (when old - (sb!alien:free-alien old)))) + (sb!alien:free-alien old)) + pathname)) (defun gc-logfile () #!+sb-doc "Return the pathname used to log garbage collections. Can be SETF. Default is NIL, meaning collections are not logged. If non-null, the designated file is opened before and after each collection, and generation statistics are appended to it." - (let ((val %gc-logfile)) + (let ((val (cast %gc-logfile c-string))) (when val - (native-pathname (cast val c-string))))) + (native-pathname val)))) (declaim (inline dynamic-space-size)) (defun dynamic-space-size () "Size of the dynamic space in bytes." @@ -254,6 +255,8 @@ statistics are appended to it." ;; turn is a type-error. (when (plusp run-time) (incf *gc-run-time* run-time)))) + #!+sb-safepoint + (setf *stop-for-gc-pending* nil) (setf *gc-pending* nil new-usage (dynamic-usage)) #!+sb-thread @@ -435,8 +438,8 @@ Note: currently changes to this value are lost when saving core." "Number of bytes that can be allocated to GENERATION before that generation is considered for garbage collection. This value is meaningless for generation 0 (the nursery): see BYTES-CONSED-BETWEEN-GCS instead. Default is -5% of the dynamic space size. Can be assigned to using SETF. Available on -GENCGC platforms only. +5% of the dynamic space size divided by the number of non-nursery generations. +Can be assigned to using SETF. Available on GENCGC platforms only. Experimental: interface subject to change." t)