From 905a0fc4c21ff6c8c752b9436e0616b868f1dfcc Mon Sep 17 00:00:00 2001 From: Nikodemus Siivola Date: Wed, 4 May 2005 07:31:37 +0000 Subject: [PATCH] 0.9.0.17: minor tweaks * install.sh checks that src/runtime/sbcl and output/sbcl.core exist, and abort if not. * distable step-instrumentation if COMPILATION-SPEED >= DEBUG. --- NEWS | 1 + doc/manual/debugger.texinfo | 8 ++++++-- install.sh | 15 +++++++++++++++ src/compiler/policies.lisp | 2 +- version.lisp-expr | 2 +- 5 files changed, 24 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS index 380cac8..6d37de6 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,7 @@ changes in sbcl-0.9.1 relative to sbcl-0.9.0: * fixed cross-compiler leakages that prevented building a 32-bit target with a 64-bit host compiler. + * compiled code is not steppable if COMPILATION-SPEED >= DEBUG. * contrib improvement: implement SB-POSIX:MKSTEMP (Yannick Gingras) * optimization: There's now a fast-path for fixnum arguments in the generic subtraction routines on x86/x86-64. (Thanks to Lutz Euler) diff --git a/doc/manual/debugger.texinfo b/doc/manual/debugger.texinfo index fd299dd..663ad25 100644 --- a/doc/manual/debugger.texinfo +++ b/doc/manual/debugger.texinfo @@ -850,9 +850,13 @@ If @code{debug} is greater than both @code{speed} and @code{space}, the command @command{return} can be used to continue execution by returning a value from the current stack frame. -If @code{debug} is also at least 2, then the code is @emph{partially +@item > (max 1 speed space compilation-speed) +If @code{debug} is also at least 2, then the code is @emph{partially steppable}. If @code{debug} is 3, the code is @emph{fully steppable}. -@xref{Single Stepping}, for details. +@xref{Single Stepping}, for details. Fully steppable code take +exponentially longer to compile in some cases, and is significantly +larger and slower; for partially steppable code the speed and space +penalties are signigicantly smaller. @end table diff --git a/install.sh b/install.sh index fbad2a8..d1a19c5 100644 --- a/install.sh +++ b/install.sh @@ -14,6 +14,7 @@ MAN_DIR=${MAN_DIR-$INSTALL_ROOT/share/man} INFO_DIR=${INFO_DIR-$INSTALL_ROOT/share/info} DOC_DIR=${DOC_DIR-$INSTALL_ROOT/share/doc/sbcl} +# Does the environment look sane? SBCL_SOURCE=`pwd` if [ -n "$SBCL_HOME" -a "$INSTALL_ROOT/lib/sbcl" != "$SBCL_HOME" ];then echo SBCL_HOME environment variable is set, and conflicts with INSTALL_ROOT. @@ -22,6 +23,20 @@ if [ -n "$SBCL_HOME" -a "$INSTALL_ROOT/lib/sbcl" != "$SBCL_HOME" ];then echo SBCL_HOME="$SBCL_HOME" exit 1 fi + +# Before doing anything else, make sure we have an SBCL to install +if [ -f src/runtime/sbcl ]; then + if [ -f output/sbcl.core ]; then + true + else + echo "output/sbcl.core not found, aborting installation." + exit 1 + fi +else + echo "src/runtime/sbcl not found, aborting installation." + exit 1 +fi + SBCL_HOME=$INSTALL_ROOT/lib/sbcl export SBCL_HOME INSTALL_ROOT ensure_dirs $BUILD_ROOT$INSTALL_ROOT $BUILD_ROOT$INSTALL_ROOT/bin \ diff --git a/src/compiler/policies.lisp b/src/compiler/policies.lisp index d79a230..b62b239 100644 --- a/src/compiler/policies.lisp +++ b/src/compiler/policies.lisp @@ -72,7 +72,7 @@ ("degraded" "full" "full" "full")) (define-optimization-quality insert-step-conditions - (if (> debug (max speed space)) + (if (> debug (max speed space compilation-speed)) debug 0) ("no" "no" "partial" "full")) diff --git a/version.lisp-expr b/version.lisp-expr index 986d4f2..b0a83b5 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -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".) -"0.9.0.16" +"0.9.0.17" -- 1.7.10.4