Update of /cvsroot/sbcl/sbcl
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv7651
126.96.36.199: gc: Interrupt contexts and stacks should be scavenged per-thread.
* Pass an explicit thread argument to scavenge_interrupt_contexts()
instead of having it call arch_os_get_current_thread(), saving the
extra call on cheneygc and allowing multiple threads on gencgc.
* On gencgc, the same applies to scavenge_control_stack().
* On gencgc, don't scrub the control stack when scavenging, wait
until after the scavenging is done (it's done by the stop-for-gc
handler on other threads).
* On gencgc, scavenge interrupt contexts and control stacks for
all threads, not just the current thread.
* On a minor note, the code for scavenging interrupt contexts is
largely unchanged between cheneygc and gencgc. Perhaps it should
be re-unified in gc-common.c?
RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v
retrieving revision 1.4925
retrieving revision 1.4926
diff -u -d -r1.4925 -r1.4926
--- version.lisp-expr 6 Aug 2010 18:46:51 -0000 1.4925
+++ version.lisp-expr 6 Aug 2010 18:47:50 -0000 1.4926
@@ -17,4 +17,4 @@
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)