- supplied, then environment compaction is inhibited."
-
- (when environment-name (compact-environment-aux environment-name 200))
-
- (let ((*gc-notify-before*
- #'(lambda (notify-stream bytes-in-use)
- (declare (ignore bytes-in-use))
- (write-string "[doing purification: " notify-stream)
- (force-output notify-stream)))
- (*internal-gc*
- #'(lambda ()
- (%purify (get-lisp-obj-address root-structures)
- (get-lisp-obj-address nil))))
- (*gc-notify-after*
- #'(lambda (notify-stream &rest ignore)
- (declare (ignore ignore))
- (write-line "done]" notify-stream))))
- (gc))
- nil)
+ supplied, then environment compaction is inhibited.
+
+ This function is a no-op on platforms using the generational garbage
+ collector (x86, x86-64, ppc)."
+ #!+gencgc
+ (declare (ignore root-structures environment-name))
+ #!-gencgc
+ (progn
+ (when environment-name
+ (compact-environment-aux environment-name 200))
+ (%purify (get-lisp-obj-address root-structures)
+ (get-lisp-obj-address nil))))