changes in sbcl-2.5.10 relative to sbcl-2.5.9:
* platform support:
** handling of "./" and "../" in pathname functions on Windows is improved.
(lp#2125908, reported by khbit)
** use x29 for the control frame pointer on arm64, improving backtrace
tooling.
** provide a plugin to lldb to display backtraces (contrib/lldb_bt.py).
** an experimental option for performing GC without interrupting and
stopping foreign function calls. Enabled via --with-nonstop-foreign-call
(for arm64, x86-64 (outside of Windows, where that's already the case.))
* bug fix: some interactions between TWO-WAY-STREAM (and ECHO-STREAM) and
user-defined streams have been cleaned up.
* bug fix: the SB-COVER contributed module can now annotate source files
containing COMPLEX literals. (A number of other more minor cosmetic
issues have also been fixed).
* bug fix: compiler crash from reoptimizing with some stale type information.
(lp#2125944)
* optimization: SLOT-VALUE calls with known slot-name on values which are of
type (OR NULL <STRUCT>) are transformed to a null check and a structure
access.
* optimization: the compiler will apply constraints to the result of calling
RANDOM. (lp#2126978, thanks to Vasily Postnicov)
* optimization: the compiler will perform type derivation on CL:APPLY called
with a known function.
* optimization: fusion of type checking and move of 64-bit integers is
enabled on arm64 and x86-64.
* optimization: allocation fusion for (PUSH (CONS A B) LIST) on x86-64.
* optimization: improvements of type derivation for float rounding operations.
* optimization: constant folding when one of the arguments is
(if v constant1 constant2)