-
sbcl-1.3.11c09d44ba · ·
changes in sbcl-1.3.11 relative to sbcl-1.3.10: * minor incompatible change: SB-EXT:*INTEXP-MAXIMUM-EXPONENT* is removed. * enhancement: TRACE ... :REPORT {TRACE,NIL} now work as advertised in the documentation string (based on patch by Patrick Stein) * enhancement: support unboxed signed-word structure slots on x86, x86-64 and ARM64. (lp#377616) * optimization: faster logical bit-array operations on multidimensional arrays. * optimization: better GC performance in the presence of many threads. (patch by Ilya Perminov, lp#1339924) * optimization: multiple-value-call is optimized with multiple argument forms, not just one. (lp#753803) * bug fix: MAKE-ALIEN-STRING returns the number of allocated bytes as a second value as advertised (reported by Johann 'Myrkraverk' Oskarsson) * bug fix: when TO-READTABLE is supplied to COPY-READTABLE, it will contain only the macros in FROM-READTABLE and no others. (lp#1631506) * enhancement: gencgc has been modified for x86-64 on Linux and macOS to a support mark-and-sweep as well as the traditional copying strategy. It is conceivable that some applications might be adversely affected. Please see ':immobile-space' in 'base-target-features.lisp-expr' for further details, and possible reasons to disable this feature. * enhancement: x86-64 supports shrinking the fixed overhead in a structure from 2 words to 1 word, reducing memory consumption in applications which create many small structures.
-
sbcl-1.3.1009ae437a · ·
changes in sbcl-1.3.10 relative to sbcl-1.3.9: * enhancement: more compact low-level error signaling code * enhancement: more compact encoding of cross-reference information * optimization: faster out of line fixnum-float comparisons. * optimization: filling a known simple-vector with a constant value is about as fast in unoptimized code as in code compiled with (SPEED 3), and the x86-64 implementation is able to use SSE instructions. * bug fix: correctly handle the case of a non-local exit within a function terminating the extent of dynamic-extent functions and variables in the presence of multiple-values (lp#1563127) * bug fix: restore builds on the latest OSX with the latest Xcode (lp#1470996)
-
sbcl-1.3.96ba22e05 · ·
changes in sbcl-1.3.9 relative to sbcl-1.3.8: * minor incompatible change: NAMESTRING prefers to return a BASE-STRING instead of (ARRAY CHARACTER (*)) when possible. * enhancement: cached make-instance/allocate-instance constructors can now get garbage collected. * optimization: better performance for some unoptimized operations on complex numbers. * bug fix: using the options :LOCAL-NICKNAMES and :LOCK in the same DEFPACKAGE form no longer signals a bogus error
-
sbcl-1.3.89a11fb18 · ·
changes in sbcl-1.3.8 relative to sbcl-1.3.7: * minor incompatible change: the system now understands that the CONDITION type is disjoint with many other system types. * minor incompatible change: argument types in condition report functions are now declared (in combination with the above change, this can result in early detection of erroneous code). * enhancement: simple arrays of any rank can be stack-allocated on platforms supporting stack allocation of vectors. * optimization: improved type derivation for FIND, POSITION, COUNT, SEARCH, MISMATCH and other array and sequence functions. * optimization: ALLOCATE-INSTANCE is now as fast as MAKE-INSTANCE. * optimization: more efficient CHANGE-CLASS. * bug fix: versions of getresuid() and getresgid() in SB-POSIX no longer cause memory faults, and should work properly (lp#1603806, reported by Kieran Grant) * bug fix: handle ENOENT from getprotobyname() (lp#1596043, reported by Stephen Hassard)
-
sbcl-1.3.7f48a5a19 · ·
changes in sbcl-1.3.7 relative to sbcl-1.3.6: * bug fix: preserve the name of the destructive function for the destroyed constant and important result warnings, even when declared NOTINLINE. * optimization: faster operations on list-sets. * optimization: better type derivation of set functions. (lp#1592152) * optimization: load-time TLS-INDEX assignment, and other microoptimizations, on x86. * optimizations in: ** APPEND; ** ECASE/ETYPECASE; ** ARRAY-DIMENSIONS; ** ARRAY-TOTAL-SIZE; ** REMOVE, REMOVE-DUPLICATES, DELETE and DELETE-DUPLICATES on lists.
-
sbcl-1.3.667c9ec73 · ·
changes in sbcl-1.3.6 relative to sbcl-1.3.5: * bug fix: do not insert conditional newlines in print-unreadable-object (lp#1398290). This reverses a change made in lp#488979 which reversed a fix advertised in release 0.8.14 to pass the GCL ANSI Test Suite. * bug fix: constant negative rotations of 32-bit quantites are compiled correctly on x86-64 and arm. (lp#1586614, reported by Guillaume Le Vaillant)
-
sbcl-1.3.5da009efb · ·
changes in sbcl-1.3.5 relative to sbcl-1.3.4: * enhancement: the platform's strtod() is exposed as SB-POSIX:STRTOD * enhancement: speed up debug info creation for highly nested functions. (lp#1563355) * enhancement: the interleaved structure slot optimization from release 1.2.6 has been ported to all architectures. * enhancement: support run-program I/O redirection into lisp streams on Windows. * bug fix: better wording in missed optimization note. (lp#1003265) * bug fix: interpreted (CAS SVREF) was broken * bug fix: support CLISP as build host for ARM (lp#1568256, thanks to Tomas Hlavaty)
-
sbcl-1.3.4b911cdc2 · ·
changes in sbcl-1.3.4 relative to sbcl-1.3.3: * enhancement: who-sets and who-references work on DEFGLOBAL. (lp#1552997) * enhancement: CONSTANTP understands backquote. e.g. (CONSTANTP '`(0 (,CHAR-CODE-LIMIT))) => T * optimization: improvements to sequence functions: CONCATENATE, SUBSTITUTE, REVERSE. * bug fix: SB-EVAL does not signal an error for (THE KEYWORD :FOO) * bug fix: a DEFTYPE name that is redefined into a DEFSTRUCT name is less likely to cause confusion in the compiler. * bug fix: DOCUMENTATION works as intended for classes with non-standard metaclasses * bug fix: (TYPEP <extended-sequence> <extended-sequence-class>) no longer returns NIL in certain situations * bug fix: MAKE-SEQUENCE, MAP, CONCATENATE and MERGE accept class objects as result-type * bug fix: MAKE-SEQUENCE, MAP, CONCATENATE and MERGE expand DEFTYPEs in result-type
-
sbcl-1.3.3d9fab5c9 · ·
changes in sbcl-1.3.3 relative to sbcl-1.3.2: * enhancement: warn about argument mismatch for functions passed as arguments to other functions (e.g. REDUCE, MAP) at compile-time. * optimization: functions accepting other functions (e.g. REDUCE, FIND) can now be constant-folded if all function arguments are declared as foldable. * optimization: improved logical operations on integers of unknown type. * bug fix: exception handling no longer leaks memory on OS X. (lp#326238)
-
sbcl-1.3.24593810d · ·
changes in sbcl-1.3.2 relative to sbcl-1.3.1: * enhancement: {READ,WRITE}-SEQUENCE are much faster for some combinations of short sequences and stream types * enhancement: MAKE-LIST's result can be stack-allocated on x86-64 * bug fix: WRITE-SEQUENCE no longer fails to write lists containing integers to bivalent streams * bug fix: LOGTEST (and hence ODDP) no longer conses when given fixnum arguments and small bit positions. (lp#1277690) * bug fix: READ-FROM-STRING compiler-macro does not permute its arguments * bug fix: DEFUN of a function name that collides with a system-generated structure accessor does not confuse the runtime. (lp#540063) * bug fix: heap corruption from miscompiled RESTART-BIND. (lp#1530390)
-
sbcl-1.3.138b330fb · ·
changes in sbcl-1.3.1 relative to sbcl-1.3.0: * enhancement: SB-THREAD support for ARM64. * enhancement: compiling an out-of-line DEFSTRUCT constructor call will warn if a defaulted value is incompatible with its slot type. * enhancement: a local INLINE declaration on a structure constructor will work as intended, subject to any other factors that inhibit inlining, even if the DEFSTRUCT was not itself within a global INLINE proclamation for the named constructor * enhancement: SB-EXT:DYNAMIC-SPACE-SIZE is now defined for cheneygc. * enhancement: x86[-64] platforms support SB-EXT:CAS on structure slots of type SB-EXT:WORD * enhancement: the interleaved structure slot optimization from release 1.2.6 has been ported to 32-bit x86, Sparc, PowerPC, ARM64. * enhancement: SB-THREAD:JOIN-THREAD signals a proper error when an attempt is made to join the current thread * bug fix: NTH-VALUE does not cause stack overflow. (lp#1511419) * bug fix: structure constructor type checking is better. (lp#1508735) * bug fix: supplied-p variables for unused optional or keyword variables no longer confuse SB-DI:PARSE-COMPILED-DEBUG-FUN-LAMBDA-LIST (and thus the backtrace machinery) (lp#1498644) * bug fix: Backtrace correctly handles undefined-function frames on MIPS. * bug fix: WITH-FLOAT-TRAPS-MASKED correctly clears accrued traps on MIPS (fixes issues with floating-point type derivation in the compiler). * bug fix: FLOAT-NAN-P and FLOAT-TRAPPING-NAN-P now work correctly on MIPS and HPPA. * bug fix: MIPS context register access now masks to 32 bits (fixing issues parsing negative-fixnum values for internal-error arguments and escaped debug variables on 64-bit CPUs). * bug fix: (SETF SAP-REF-DOUBLE) with constant offset on big-endian MIPS now works correctly. * bug fix: Callback parameter (argument) handling on MIPS is now vastly more correct. * bug fix: %DECREMENT-SEMAPHORE adjusts the remaining timeout after a spurious wakeup
-
sbcl-1.3.0dab9ef7a · ·
changes in sbcl-1.3.0 relative to sbcl-1.2.16: * minor incompatible change: the environment passed to a macro/setf/deftype expander is not always an object of type SB-KERNEL:LEXENV. It can be nil, as is permissible by the standard. * enhancement: ported to ARM64 Linux. * enhancement: a new interpreter is included which has many benefits over sb-eval. It is disabled by default. See src/interpreter/README for instructions to enable it, and further details. * bug fix: calling COMPILE when SB-EXT:*EVALUATOR-MODE* was :INTERPRET would fail to perform "normal semantic processing such as macro expansion" as stipulated by X3J13 issue LOAD-TIME-EVAL. * bug fix: SB-UNICODE:CONFUSABLE-P no longer treats "<" and the empty string as confusable. (lp#1504739) * bug fix: (ASSERT (COMPUTE-IT ...)) would expand incorrectly if COMPUTE-IT was a local macro that shadowed a global function. * bug fix: SB-POSIX:CFSETISPEED and SB-POSIX:CFSETOSPEED now work properly on platforms that use only the minimum specified set of fields in struct termios (verified on Linux, still known not to work on FreeBSD and NetBSD, very probably others). (partial fix for lp#1500951)
-
sbcl-1.2.1602b0f4b2 · ·
changes in sbcl-1.2.16 relative to sbcl-1.2.15: * enhancement: by default, timers with a repeat interval do not "catch up" by repeatedly calling their function after a clock discontinuity such as a suspend and resume cycle * bug fix: correctly restore multiple values on the stack in the presence of alien calls. (lp#1489590) * bug fix: MAKE-STRING-OUTPUT-STREAM enforces that :ELEMENT-TYPE is a subtype of CHARACTER. * bug fix: an EQL method specializer no longer causes garbage retention if there are no extant methods using the specializer. (lp#492851)