1.0.20.10: semaphore and condition variable fixes
[sbcl.git] / NEWS
diff --git a/NEWS b/NEWS
index 0cfec02..7a162e2 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,17 @@
 ;;;; -*- coding: utf-8; -*-
+  * new feature: SB-EXT:ATOMIC-INCF allows atomic incrementation of
+    appropriately typed structure slots without locking.
+  * enhancement: reduced conservativism on GENCGC platforms: on
+    average 45% less pages pinned (measured from SBCL self build).
+  * bug fix: SB-EXT:COMPARE-AND-SWAP on SYMBOL-VALUE can no longer
+    mutate constant symbols or violate declaimed type of the symbol.
+  * bug fix: SB-THREAD:SIGNAL-SEMAPHORE could fail to wakeup threads
+    sleeping on the semaphore in heavily contested semaphores.
+  * bug fix: semaphores and condition variables were not interrupt
+    safe.
+  * bug fix: SB-THREAD:CONDITION-WAIT doesn't allow waits on mutexes
+    owned by other threads anymore.
+
 changes in sbcl-1.0.20 relative to 1.0.19:
   * minor incompatible change: OPTIMIZE qualities
     SB-C::STACK-ALLOCATE-DYNAMIC-EXTENT, SB-C::STACK-ALLOCATE-VECTOR,
@@ -23,6 +36,9 @@ changes in sbcl-1.0.20 relative to 1.0.19:
     work. (thanks to Alec Berryman)
   * optimization: REPLACE deftransforms don't punt when :START1 or
     :START2 is given
+  * bug fix: compiling DESTRUCTURING-BIND on constant list arguments
+    no longer emits a code deletion note. (reported by Andrew
+    Gasparovic)
   * bug fix: bogus odd-number-of-keywords STYLE-WARNINGs from calls to
     functions with an odd number of &OPTIONAL arguments, a &REST
     argument, and one or more &KEY arguments at the call site.