sbcl.sbcl/tests/arena-small.impure.lisp
Douglas Katzman 0e1676d703
Some checks are pending
CL-host / compare-xc-host-fasls (self, false) (push) Blocked by required conditions
CL-host / ecl (push) Waiting to run
CL-host / clisp (push) Waiting to run
CL-host / ccl (push) Waiting to run
CL-host / cmucl (push) Waiting to run
CL-host / sbcl (push) Waiting to run
CL-host / self (push) Waiting to run
CL-host / compare-xc-host-fasls (ccl, false) (push) Blocked by required conditions
CL-host / compare-xc-host-fasls (clisp, false) (push) Blocked by required conditions
CL-host / compare-xc-host-fasls (cmucl, false) (push) Blocked by required conditions
Linux / build (x86, --with-sb-thread, ) (push) Waiting to run
Linux / build (x86, --without-sb-thread, ) (push) Waiting to run
Linux / build (x86, --without-sb-unicode, ) (push) Waiting to run
Linux / build (x86-64, --with-mark-region-gc) (push) Waiting to run
Linux / build (x86-64, --with-sb-fasteval --without-sb-eval, fasteval) (push) Waiting to run
Linux / build (x86-64, --with-sb-thread, ) (push) Waiting to run
Linux / build (x86-64, --with-sb-thread, sse4) (push) Waiting to run
Linux / build (x86-64, --without-sb-thread, ) (push) Waiting to run
Linux / build (x86-64, --without-sb-unicode, ) (push) Waiting to run
Mac / build (--without-sb-thread, x86-64) (push) Waiting to run
Mac / build (arm64, --with-mark-region-gc) (push) Waiting to run
Mac / build (arm64, --with-sb-thread) (push) Waiting to run
Mac / build (x86-64, --with-mark-region-gc) (push) Waiting to run
Mac / build (x86-64, --with-sb-thread) (push) Waiting to run
Windows / build (push) Waiting to run
Fix "crash with arenas" posted to sbcl-devel
2024-07-02 21:28:03 -04:00

23 lines
602 B
Common Lisp

#+(or (not system-tlabs) interpreter) (invoke-restart 'run-tests::skip-file)
;; Test based on example from Andreas Franke
(defun make-unbounded-arena (chunk-size)
(sb-vm:new-arena chunk-size
chunk-size
(truncate (- (dynamic-space-size) chunk-size)
chunk-size)))
(defvar *my-arena* (make-unbounded-arena (* 64 1024)))
(dotimes (i 200)
(sb-ext:gc)
(write-char #\.)(force-output)
(sb-vm:with-arena (*my-arena*)
(dotimes (j 32768)
(let* ((cell (cons nil nil)))
(setf (car cell) (list 42)))) ;; list is crucial here
nil))