From: <me...@us...> - 2006-09-15 14:39:54
|
Update of /cvsroot/sbcl/sbcl/src/compiler/generic In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv17667/src/compiler/generic Modified Files: parms.lisp Log Message: 0.9.16.32: weak hash tables The implementation is based on cmucl's weak hash table code. * scav_vector defers scavenging of weak hash tables until ... * ... newspace scavenging at which time the deferred weak hash tables are scavenged according to their WEAKNESS type (this happens after each scan of newspace) * finally just before weak pointers are scanned (i.e. with the purpose of breaking them) the weak hash tables are scanned (i.e. the appropriate entries are removed) too. Index: parms.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/generic/parms.lisp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- parms.lisp 5 Jun 2006 12:25:55 -0000 1.2 +++ parms.lisp 15 Sep 2006 14:39:45 -0000 1.3 @@ -53,4 +53,10 @@ sb!unix::*interrupts-enabled* sb!unix::*interrupt-pending* *gc-inhibit* - *gc-pending*)) + *gc-pending* + + ;; hash table weaknesses + :key + :value + :key-and-value + :key-or-value)) |