changes in sbcl-2.5.8 relative to sbcl-2.5.7:
* minor incompatible change: SB-THREAD:MAIN-THREAD-P can only be applied to
threads, not arbitrary lisp objects.
* minor incompatible change: the instruction-combining (peephole)
optimization pass does not run if COMPILATION-SPEED has a higher value
than SPEED.
* platform support:
** on arm64, provide better backtraces in the statistical profiler's
reporting, along with better detection of assembly routines, local
functions and callers of foreign code.
** on ppc64le, make --dynamic-space-size behave as documented.
(lp#2121255)
** on x86-64, handle more cases in the ALU+TEST peephole optimization.
* bug fix: for file-streams with :DIRECTION :IO, input and output file
positions should no longer get out of sync. (lp#1600610, reported by
Guillaume le Vaillant, test cases by Brent Benson)
* bug fix: an infinite loop in SUBTYPEP for types involving negations of
CONS of specialized ARRAY types. (lp#2114755)
* bug fix: miscompilation of a CASE form with small numeric keys.
(lp#2119035)
* bug fix: anonymous alien structs definitions are deduplicated, making it
harder to overflow internal data structures. (lp#2114943, reported by
Brooke Tilley)
* bug fix: allow ALU+TEST peephole optimizations to fire on x86-64.
(lp#2120547, reported by Christoph Breitkopf)
* bug fix: miscompilation of a LOOP form with rational arithmetic on
variables involved in termination tests. (lp#2121178, reported by 3b)
* bug fix: the compiler is better able to associate some forms in a
macroexpanion with the original sources.
* optimization: improve array construction with LIST or SEQUENCE
:INITIAL-CONTENTS.