Update of /cvsroot/sbcl/sbcl
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv6409
Modified Files:
NEWS version.lisp-expr
Log Message:
1.0.16.31: --control-stack-size runtime argument
* THREAD_CONTROL_STACK_SIZE becomes DEFAULT_CONTROL_STACK_SIZE.
* Align thread spaces using the larger of BACKEND_PAGE_SIZE and
CONTROL_STACK_ADJUSTMENT_BYTES.
* Take care of aligning both ends of the control stack when setting
up the thread struct -- that way pthread_attr_setstack doesn't have
to worry about alignment.
* Simplify stack setup in on x86oid platforms in
call_into_lisp_first_time: instead of having the nasty window where
ESP/RSP is right at the end of the stack, use pull out the control
stack end right out of the thread struct.
* Minimal documentation.
Not strictly related to --control-stack-size:
* Refactor thread post mortem cleanups to share as much code as
possible and reduce conditionalization. The core functions in the
new world are plan_thread_post_mortem, schedule_thread_post_mortem,
and perform_thread_post_mortem.
* Malloc thread attributes, and destroy them before freeing thread
stacks. (pthread_attr_setstack seems to say that we are not allowed
to free stacks that have attributes referring to them -- hopefully
pthread_attr_destroy gives us the licence we need, and since it is
not entirely clear we are allowed to destroy the attr before the
thread has finished, do it only after pthread_join.)
Index: NEWS
===================================================================
RCS file: /cvsroot/sbcl/sbcl/NEWS,v
retrieving revision 1.1337
retrieving revision 1.1338
diff -u -d -r1.1337 -r1.1338
--- NEWS 12 May 2008 14:12:42 -0000 1.1337
+++ NEWS 15 May 2008 15:37:48 -0000 1.1338
@@ -3,7 +3,9 @@
* temporary regression: user code can no longer allocate closure
variable storage on stack, due to bug 419 without explicitly
requesting it. Please consult sbcl-devel for advice if you need to
- use this feature in the meanwhile.
+ use this feature in the meanwhile.
+ * new feature: runtime argument --control-stack-size can be used to
+ adjust thread default control stack size.
* optimization: ADJOIN and PUSHNEW are upto ~70% faster in normal
SPEED policies.
* optimization: APPEND is upto ~10% faster in normal SPEED policies.
Index: version.lisp-expr
===================================================================
RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v
retrieving revision 1.3943
retrieving revision 1.3944
diff -u -d -r1.3943 -r1.3944
--- version.lisp-expr 15 May 2008 13:45:26 -0000 1.3943
+++ version.lisp-expr 15 May 2008 15:37:49 -0000 1.3944
@@ -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".)
-"1.0.16.30"
+"1.0.16.31"
|