X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=faea9195a78da925cfa3f149153029c4a489064e;hb=1b650be8b800cf96e2c268ae317fb26d0bf36827;hp=33c0c57eeb08af531cebdca02635a722ac32f2fe;hpb=c7de1989d006e0b3a4f26143b7a81c9bdb754101;p=sbcl.git diff --git a/NEWS b/NEWS index 33c0c57..faea919 100644 --- a/NEWS +++ b/NEWS @@ -2008,9 +2008,37 @@ changes in sbcl-0.8.4 relative to sbcl-0.8.3: support has been systematized, and now supports the methods specified by ANSI, along with a default method and a method for slot documentation. (reported by Nathan Froyd) + * bug fix: effective methods associated with a generic function are + no longer cached over a change of that generic function's method + combination. (reported by Andreas Fuchs) + * bug fix: RUN-PROGRAM now does not fail if some element in $PATH + names a non-existent directory. (thanks to Andreas Fuchs) + * bug fix: ROUND and TRUNCATE could, under certain circumstances on + the PPC platform, lead to stack corruption; this has been fixed. + (reported by Rainer Joswig) + * bug fix: ASH on an (UNSIGNED-BYTE 32) with a shift of -32 or lower + no longer ever returns 1 instead of 0. (thanks to Lars Brinkhoff) * optimization: restored some effective method precomputation in CLOS (turned off by an ANSI fix in sbcl-0.8.3); the amount of precomputation is now tunable. + * optimization: compiler-internal data structure use has been + reviewed, and changes have been made that should improve the + performance of the compiler by about 20%. + * optimization: performance of FILL (and :INITIAL-ELEMENT) on + simple-base-strings and simple-bit-vectors is improved. + * microoptimization: the compiler is better able to make use of the + x86 LEA instruction for multiplication by constants. + * bug fix: in some situations compiler did not report usage of + generic arithmetic in (SPEED 3) policy. + * fixed some bugs revealed by Paul Dietz' test suite: + ** the RETURN clause in LOOP is now equivalent to DO (RETURN ...). + ** ROUND and FROUND now give the right answer when given very + small float arguments. + ** (FLOAT X) for X of type DOUBLE-FLOAT now returns X in all + circumstances. + ** optimizer for (EXPT X 0) did not work for X not of type FLOAT. + ** (GCD 0 ) returned . + ** LCM should return a non-negative integer. planned incompatible changes in 0.8.x: * (not done yet, but planned:) When the profiling interface settles