[prev in list] [next in list] [prev in thread] [next in thread]
List: sbcl-commits
Subject: [Sbcl-commits] CVS: sbcl/tests dynamic-extent.impure.lisp, 1.19,
From: Nikodemus Siivola <demoss () users ! sourceforge ! net>
Date: 2007-09-26 15:55:03
Message-ID: E1IaZE7-0007Pt-UH () sc8-pr-cvs8 ! sourceforge ! net
[Download RAW message or body]
Update of /cvsroot/sbcl/sbcl/tests
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv28400/tests
Modified Files:
dynamic-extent.impure.lisp
Log Message:
1.0.10.6: nested DX allocation
* RECOGNIZE-DYNAMIC-EXTENT-LVARS needs to propagate DX information to
combination arguments, so that
(LET ((X (LIST (LIST 1 2) (LIST 3 4))))
(DECLARE (DYNAMIC-EXTENT X))
(FOO X))
does the right thing.
Index: dynamic-extent.impure.lisp
===================================================================
RCS file: /cvsroot/sbcl/sbcl/tests/dynamic-extent.impure.lisp,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- dynamic-extent.impure.lisp 26 Sep 2007 15:44:23 -0000 1.19
+++ dynamic-extent.impure.lisp 26 Sep 2007 15:54:58 -0000 1.20
@@ -146,6 +146,20 @@
(true cons)
nil))
+;;; Nested DX
+
+(defun-with-dx nested-dx-lists ()
+ (let ((dx (list (list 1 2) (list 3 4))))
+ (declare (dynamic-extent dx))
+ (true dx)
+ nil))
+
+(defun-with-dx nested-dx-conses ()
+ (let ((dx (cons 1 (cons 2 (cons 3 (cons (cons t t) nil))))))
+ (declare (dynamic-extent dx))
+ (true dx)
+ nil))
+
;;; with-spinlock should use DX and not cons
(defvar *slock* (sb-thread::make-spinlock :name "slocklock"))
@@ -185,6 +199,8 @@
(assert-no-consing (test-lvar-subst 11))
(assert-no-consing (dx-value-cell 13))
(assert-no-consing (cons-on-stack 42))
+ (assert-no-consing (nested-dx-conses))
+ (assert-no-consing (nested-dx-lists))
;; Not strictly DX..
(assert-no-consing (test-hash-table))
#+sb-thread
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Sbcl-commits mailing list
Sbcl-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-commits
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic