X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fgc.impure.lisp;h=a5e9bfb82c6b9426ea511bff584e9baae615f31a;hb=97dd06859cae90c8ef9021dafe1beebb78b1547f;hp=e1dd98dc80e34aa5b755c427997bcc54cb6bc6bc;hpb=47eb330ef0f3b99d24c0e24d897b757f16950c4b;p=sbcl.git diff --git a/tests/gc.impure.lisp b/tests/gc.impure.lisp index e1dd98d..a5e9bfb 100644 --- a/tests/gc.impure.lisp +++ b/tests/gc.impure.lisp @@ -31,15 +31,7 @@ (let ((gc-happend nil)) (push (lambda () (setq gc-happend t)) sb-ext:*after-gc-hooks*) - ;; check GC-{ON,OFF} works and gc is deferred - (gc-off) - (gc) - (assert (not gc-happend)) - (gc-on) - (assert gc-happend) - ;; check that WITHOUT-GCING defers explicit gc - (setq gc-happend nil) (sb-sys:without-gcing (gc) (assert (not gc-happend))) @@ -58,16 +50,14 @@ (assert (not gc-happend))) ;; give the hook time to run (sleep 1) - (assert gc-happend)) - - ;; check GC-ON works even in a WITHOUT-GCING - (setq gc-happend nil) - (sb-sys:without-gcing - (gc) - (assert (not gc-happend)) - (gc-on) - (assert gc-happend) - (setq gc-happend nil)) - (assert (not gc-happend))) - -(sb-ext:quit :unix-status 104) + (assert gc-happend))) + +;;; SB-EXT:GENERATION-* accessors returned bogus values for generation > 0 +(with-test (:name :bug-529014 :skipped-on '(not :gencgc)) + ;; FIXME: These parameters are a) tunable in the source and b) + ;; duplicated multiple times there and now here. It would be good to + ;; OAOO-ify them (probably to src/compiler/generic/params.lisp). + (loop for i from 0 to sb-vm:+pseudo-static-generation+ + do (assert (= (sb-ext:generation-bytes-consed-between-gcs i) 2000000)) + (assert (= (sb-ext:generation-minimum-age-before-gc i) 0.75)) + (assert (= (sb-ext:generation-number-of-gcs-before-promotion i) 1))))