1.0.17.24: refactor handling of constants in the compiler
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 4da4bff..ecd853e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,34 @@
 ;;;; -*- coding: utf-8; -*-
+changes in sbcl-1.0.18 relative to 1.0.17:
+  * minor incompatible change: SB-SPROF:WITH-PROFILING now by default
+    profiles only the current thread.
+  * minor incompatible change: changes to SYMBOL-VALUE of constants
+    defined with DEFCONSTANT now signal an error.
+  * enhancement: SB-SPROF now has support for wallclock profiling,
+    and is also able to profile specific threads. REPORT output
+    has also additional sorting options.
+  * optimization: structure allocation has been improved
+    ** constructors created by non-toplevel DEFSTRUCTs are ~40% faster.
+    ** out of line constructors are ~10% faster.
+    ** inline constructors are ~15% faster.
+    ** inline constructors are capable of dynamic extent allocation
+       (generally on x86 and x86-64, in some cases on other platforms
+       as well.)
+  * optimization: simple uses of HANDLER-CASE and HANDLER-BIND no
+    longer cons.
+  * optimization: file compiler is now able to coalesce non-circular
+    lists, non-base strings, and bit-vectors. Additionally, constants
+    are never referenced through SYMBOL-VALUE at runtime.
+  * bug fix: EAI_NODATA is deprecated since RFC 3493. Stop using it
+    in sb-bsd-sockets.
+  * fixed some bugs revealed by Paul Dietz' test suite:
+    ** NIL is a valid function name (regression at 1.0.13.38)
+    ** FILL on lists was missing its return value (regression at 1.0.12.27)
+    ** STRING-TRIM, STRING-LEFT-TRIM, and STRING-RIGHT-TRIM did not respect
+       fill pointers properly (regression at 1.0.12.23)
+    ** STRING-TRIM, STRING-LEFT-TRIM, and STRING-RIGHT-TRIM did not respect
+       displacement indices properly (regression at 1.0.12.23)   
+
 changes in sbcl-1.0.17 relative to 1.0.16:
   * temporary regression: user code can no longer allocate closure
     variable storage on stack, due to bug 419 without explicitly
@@ -6,6 +36,16 @@ changes in sbcl-1.0.17 relative to 1.0.16:
     use this feature in the meanwhile.
   * new feature: runtime argument --control-stack-size can be used to
     adjust thread default control stack size.
+  * enhancement: improved TIME output
+    ** all times are reported using the measured accuracy (milliseconds
+       for real and GC times, microseconds for everything else.)
+    ** processor cycle counts on x86 and x86-64.
+    ** interpreted forms are counted for both evaluator modes.
+    ** number of lambdas converted by the compiler is reported.
+    ** CPU percentage report (computed from real and total run time.)
+    ** more comprehensive run time reporting, using a condenced format
+    ** interperted form, lambda, and page fault counts are omitted
+       when zero.
   * optimization: ADJOIN and PUSHNEW are upto ~70% faster in normal
     SPEED policies.
   * optimization: APPEND is upto ~10% faster in normal SPEED policies.
@@ -13,11 +53,12 @@ changes in sbcl-1.0.17 relative to 1.0.16:
     in normal SPEED policies.
   * optimization: NCONC no longer needs to heap cons its &REST list
     in normal SPEED policies.
+  * bug fix: SB-FLUID build feature no longer breaks the build. (thanks
+    to Sidney Markowitz)
+  * bug fix: UNION and NUNION work with :TEST-NOT once more,
+    regression since 1.0.9.1. (thanks to Eric Marsden)
   * bug fix: result of MAKE-ARRAY can be stack allocated - regression
     since 1.0.15.36. (thanks to Paul Khuong)
-  * bug fix: bogus errors when generating certain code sequences, due
-    to the compiler not accepting ANY-REG for primitive type T on x86
-    and x86-64. (reported by Stelian Ionescu.)
   * bug fix: LAST when always returned the whole list when given a bignum
     as the second argument.
   * bug fix: dynamic extent allocation of nested lists and vectors
@@ -30,6 +71,8 @@ changes in sbcl-1.0.17 relative to 1.0.16:
     2.18.50.0.4 support.  (thanks to Marijn Schouten)
   * bug fix: fix ECASE warnings from CMUCL-as-xc-host.  (reported by
     Andreas Franke)
+  * bug fix: the fopcompiler can handle LOCALLY forms (with no
+    declarations) successfully.  (reported by Attila Lendvai)
 
 changes in sbcl-1.0.16 relative to 1.0.15:
   * minor incompatible change: revert the changes to sb-posix's error