Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • sbcl-2.2.3
    changes in sbcl-2.2.3 relative to sbcl-2.2.2:
      * minor incompatible change: SB-THREAD:MUTEX-OWNER may return :THREAD-DEAD
        if the apparent owner either exited nearly instantly after releasing the
        mutex (and is not now the owner), or died and never released it.
      * minor incompatible change: building the system with the simple semi-space
        copying collector is no longer supported.
      * minor incompatible change: support for PPC/Darwin has been removed.
      * platform support:
        ** fix regressions in threads on RISC-V.  (lp#1962598)
        ** threads are now enabled by default on RISC-V.
        ** The generational garbage collector is now supported on MIPS.
      * optimization: fasls containing standard object literals are now smaller
        and load more efficiently.
      * optimization: faster arithmetic (*-+) on word-sized integers when the
        result is not known to fit into a word (ARM64 and x86-64).
      * bug fix: EQness of constants is now always preserved when block compiling.
    
  • sbcl-2.2.2
    changes in sbcl-2.2.2 relative to sbcl-2.2.1:
      * platform support:
        ** all architectures now share the coverage mark instrumentation
           implementation, meaning that performance now equals what had been
           implemented only on x86 architectures.
        ** fixed a performance regression on x86-64 from changes in AVX2 register
           handling.  (lp#1960081, reported by Michael Kappert)
        ** fixed a garbage collection bug on ppc64 manifesting in occasional
           corruption on threaded programs.  (lp#1959338, lp#1952973)
        ** micro-optimizations in type tests for (SIGNED-BYTE 64).
      * enhancement: improved handling of source locations for some classes
        of compile time and runtime errors.
      * enhancement: better source locations for structure accessors.
      * bug fix: SB-COVER now always instruments top level forms correctly.
      * bug fix: muffling conditions now works correctly on higher debug settings.
      * bug fix: local muffling declarations now scope correctly with respect to
        undefined variable warnings.
      * optimization: calls to STRING= can now return NIL more quickly on strings
        of unequal length.
    
  • sbcl-2.2.1
    changes in sbcl-2.2.1 relative to sbcl-2.2.0:
      * incompatible change: DEFINE-ALIEN-CALLBACK, which has never been exported
        from a public package, has been deleted.  It is superseded by
        SB-ALIEN:DEFINE-ALIEN-CALLABLE.
      * minor incompatible change: compiler warnings are emitted on more
        provably-erroneous code involving sequence functions on specialized
        arrays.
      * platform support:
        ** support getting thread IDs on FreeBSD.  (thanks to Felix Lange)
        ** faster function call sequence on arm64.
        ** the built-in buffer size for file streams is increased to 8KB.
      * enhancement: provide a restart for method lambda list mismatches that
        fmakunbounds the generic function.
      * enhancement: provide a USE-VALUE restart around type errors signalled from
        (SETF SLOT-VALUE).
      * enhancement: when UPDATE-INSTANCE-FOR-DIFFERENT-CLASS (or -REDEFINED-)
        undergoes a non-local exit, restore the instance to its original state.
        (thanks to Michał phoe Herda)
      * enhancement: the :SYNCHRONIZED keyword argument to MAKE-HASH-TABLE is no
        longer experimental.
      * bug fix: fix an erroneous compiler tranform for (EXPT SINGLE-FLOAT
        INTEGER).  (lp#1958061, thanks to Vasily Postnicov)
      * bug fix: disassembly of closures is more likely to show the relevant code
        if more than one closure closes over the same environment.  (lp#1956870,
        reported by Michał phoe Herda)
      * bug fix: RUN-PROGRAM with :IF-EXISTS :APPEND no longer signals an error if
        the output does not exist.  (lp#1958569, thanks to Ingo Krabbe)
      * optimization: reorder basic blocks to have loop code fall through more
        often.  (thanks to Hayley Patton)
      * optimization: sequences larger than the buffer size are written to streams
        without going through a buffering stage.  (reported by Philipp Marek)
    
  • sbcl-2.2.0
    changes in sbcl-2.2.0 relative to sbcl-2.1.11:
      * platform support:
        ** support for FreeBSD on 64-bit arm platforms has been added.
        ** the :SB-LINKABLE-RUNTIME build-time feature is now supported on 32-bit
           and 64-bit arm platforms, and on the FreeBSD operating system.
        ** bug fix: correct encoding for vmovsd.  (lp#1953483, reported by Marco
           Heisig)
        ** bug fix: support ABIv1 callbacks on big-endian ppc64.  (lp#1900343,
           thanks to Thomas Fitzsimmons)
        ** bug fix: don't misuse mprotect() in dynamic space on Windows.
           (lp#1955723, reported by 3b)
      * enhancement: catch type mismatches for REPLACE, SUBSTITUTE, MAKE-ARRAY
        with :INITIAL-CONTENTS.
      * optimization: printing symbols is around 10% faster than previously.
      * bug fix: don't use the current type of non-returning functions when
        redefining them in another file. (lp#1953214, reported by Nicolas Hafner)
      * bug fix: eliminate stack cleanups more conservatively.  (lp#1954330,
        reported by Daniel Kochmański)
      * bug fix: check consistently in tests for the existence of VOPs.
        (lp#1952896, reported by Sébastien Villemot)
    
  • debian/2%2.1.11-1
    sbcl Debian release 2:2.1.11-1
  • upstream/2.1.11
    Upstream version 2.1.11
  • sbcl-2.1.11
    changes in sbcl-2.1.11 relative to sbcl-2.1.10:
      * minor incompatible change: *COMPILE-PRINT* now defaults to NIL.  T gives
        the old behavior of echoing top level forms. Users who want to see a
        report of the phases of compilation can use *COMPILE-PROGRESS* and the
        corresponding COMPILE-FILE :PROGRESS argument.
      * optimization: The compiler assignment-converts functions much more
        aggressively; local or non-entry block-compiled functions
        which always return to the same place are automatically converted into the
        equivalent loop or goto control structures.
      * enhancement: on x86-64 and ppc64 platforms, the system uses inline
        instructions rather than page protection to implement a store barrier for
        the garbage collector.
      * enhancement: improved reporting of code deletion notes.
      * platform support:
        ** unbound-variable restarts for amd64 are now supported.
        ** bug fix: single-floats to foreign functions on 32-bit ARMel.
           (lp#1950080, reported by Sebastien Villemot)
        ** bug fix: opening files with names containing non-ASCII characters on
           Windows works better.  (reported by Nikolay)
        ** bug fix: use fp_xsave to access the floating point flags and control
           word in Haiku signal contexts.  (Thanks to Al Hoang)
        ** bug fix: complex single-float support on riscv64.
        ** optimization: support for accessing elements of &rest args directly on
           ppc64, mips, riscv.
        ** optimization: parse a /proc file rather than executing uname for
           SOFTWARE-VERSION on Linux
      * bug fix: fix crash from SB-COVER:RESET-COVERAGE.  (lp#1950059, reported by
        Gregory Czerniak)
    
  • debian/2%2.1.10-1
    8e5369b7 · New upstream release ·
    sbcl Debian release 2:2.1.10-1
  • upstream/2.1.10
    Upstream version 2.1.10
  • sbcl-2.1.10
    changes in sbcl-2.1.10 relative to sbcl-2.1.9:
      * incompatible change: simd-pack without a specific element-type is no
        longer treated as containing integers. A type must be supplied for VOPs to
        work on such values.
      * minor incompatible change: the list form of the FUNCTION type specifier
        does not allow * as any argument type, but does allow * as a placeholder
        for wholly unspecified arguments when specifying the value(s) type.
      * minor incompatible change: the default (Lisp) toplevel option parser
        throws an error if it encounters an option which was intended to be used
        and removed by the C runtime.  (lp#1945081, reported by Luke Gorrie)
      * new feature: there is now a defined interface for defining foreign
        callable functions, which can be used for passing callbacks to foreign
        functions or for calling Lisp code from the foreign world as a shared
        library (preliminary support). See the revised manual section "Calling
        into Lisp From C" for more details.
      * enhancement: arg-count mismatches in self-calls in defmethod are reported.
        (lp#1912436, reported by 3b)
      * enhancement: the SB-CLTL2 contrib now returns type information for
        generated structure accessors.  (lp#1934859, reported by SATO shinichi)
      * optimization: code generation is improved for modular arithmetic involving
        signed operations.
      * platform support:
        ** x86-64 machine code emitter crash when attempting to assemble some
           vector instructions.  (lp#1945975, thanks to Marco Heisig)
        ** conditional move instructions are now supported on arm64.
        ** a number of new peephole optimizations have been implemented on arm64.
        ** arm64 on Darwin now uses gcc-compatible thread-local storage.
      * bug fix: compiler notes are no longer emitted when compiling FORMATTER
        forms, including when implicitly triggered on a constant string argument
        to FORMAT.  (lp#1946246, reported by SATO shinichi)
      * bug fix: a compiler error when attempting to compile a call to AREF with
        too many dimensions.  (lp#1902985)
      * bug fix: harmonize the behaviour of SLOT-BOUNDP on non-standard-objects
        between the various ways in which it can be called.  (lp#732229, reported
        by Zach Beane)
      * bug fix: FTRUNCATE and similar functions are now more careful about
        deriving facts about the sign of zero they might return.  (lp#1732009,
        reported by Paul Dietz)
    
  • debian/2%2.1.9-1
    sbcl Debian release 2:2.1.9-1
  • upstream/2.1.9
    Upstream version 2.1.9
  • sbcl-2.1.9
    changes in sbcl-2.1.9 relative to sbcl-2.1.8:
      * minor incompatible change: the experimental DEFCAS macro has been removed.
      * minor incompatible change: finalizing classes with slots with duplicate
        symbol-names will only emit a warning if either slot name is an exported
        symbol.  (lp#1943559)
      * platform support:
        ** the debugger is better able to display SIMD packs.  (thanks to Marco
           Heisig)
        ** fix a bug in zeroing YMM registers.  (thanks to Marco Heisig)
        ** fix instruction definitions for SSE blend and shuffle vector
           instructions.  (thanks to Marco Heisig)
        ** handle heap corruption exceptions in our exception handler on win64.
        ** improve WAIT-UNTIL-FD-USABLE on Windows, reducing busy-looping.
           (thanks to Fabio Almeida)
      * bug fix: EQUALP hash tables whose keys contain arrays containing floats should
        behave correctly.  (lp#1942424, reported by Nicolas Neuss)
    
  • debian/2%2.1.8-1
    sbcl Debian release 2:2.1.8-1
  • upstream/2.1.8
    Upstream version 2.1.8
  • sbcl-2.1.8
    changes in sbcl-2.1.8 relative to sbcl-2.1.7:
      * minor incompatible change: the experimental DEFINE-CAS-EXPANDER macro has
        been removed.
      * minor incompatible change: the hooks in *INIT-HOOKS* are called before
        starting the finalizer or other non-user threads.  (thanks to Sean Whitton)
      * platform support:
        ** many improvements to code generation on arm64.
        ** avoid slow forms of the bit test instructions BT, BTS, BTR on x86-64.
        ** fix a bug in loading large core files on the Apple M1/arm64.  (thanks
           to Mayank Manjrekar)
        ** fix a bug in loading core loading on the Apple M1/arm64.  (reported by
           Eric Timmons)
      * enhancement: the block-compiler is more robust to files with intermingled
        compile-time and load-time effects.  The semantics of the block-compiler
        remain not-entirely ANSI compatible.  (thanks to Sean Maher)
      * enhancement: (CAS SAP-REF-<x>) and CAS on alien integers is implemented on
        ppc64 and x86-64, working towards fixing lp#1894057
      * bug fix: fix OPEN-STREAM-P on streams closed by saving a core.
        (lp#1938433, reported by Guillaume LE VAILLANT)
      * bug fix: remove a spurious warning from COERCE.  (lp#1920931, reported by
        Andrew Berkley)
      * bug fix: remove a warning from inlining SET-EXCLUSIVE-OR.  (lp#1936470,
        reported by Jerome Abela)
    
  • debian/2%2.1.7-1
    sbcl Debian release 2:2.1.7-1
  • upstream/2.1.7
    Upstream version 2.1.7
  • sbcl-2.1.7
    changes in sbcl-2.1.7 relative to sbcl-2.1.6:
      * incompatible change: on certain platforms (currently just x86-64),
        dynamic-extent arrays specialized on character and numeric types and
        created without either :INITIAL-ELEMENT or :INITIAL-CONTENTS will reflect
        previous contents of the stack instead of #\null (or 0) in all elements.
      * minor incompatible change: SB-SPROF:START-PROFILING no longer silently
        does nothing if the clock is already running. It instead stop and restarts
        with the newly provided options, and warns.
      * minor incompatible change: the system attempts to refer to the supplied
        pathname in compiler diagnostics, if relevant, rather than the truename.
      * enhancement: new contrib module sb-graph producing graphical
        visualizations of Intermediate Representations of SBCL compilation data
        structures.
      * platform support:
        ** improved code generation for unary minus in modular contexts on arm64.
        ** make the disassembler annotations slightly more robust on arm64.
        ** release space back to the Operating System on Windows.
        ** improve the test for whether pages need to be committed on Windows.
        ** fix a bug in the use of the VPCMPEQD opcode on x86-64.  (lp#1928516,
           thanks to Marco Heisig)
      * optimization: the type of (LOOP ... COLLECT ...), and the type of COLLECT
        INTO variables, is derived as LIST.  (lp#1934577, reported by SATO
        shinichi)
    
  • sbcl-2.1.6
    changes in sbcl-2.1.6 relative to sbcl-2.1.5:
      * minor incompatible change: COMPILE-FILE does not merge the input file's
        pathname-directory into the output path if :OUTPUT-FILE was specified
        and has a directory that is not :UNSPECIFIC.
      * platform support:
        ** improvements to unwind code generation on arm64.
        ** on x86-64, accept three operands for vshufpd.  (reported by Bela
           Pecsek)
        ** on x86-64, improvements to use of popcount
        ** improve exception handling on 64-bit Windows.  (thanks to Luis Borges
           de Oliveira)
      * bug fix: allow use of macros with improper argument list.  (lp#1929623,
        thanks to Sean Maher)
      * bug fix: COERCE no longer attempts to guess what the user meant if they
        provide a type specifier of a union of types other than STRING.
        (lp#1929614)
      * bug fix: print a single trailing zero after the decimal point for FORMAT
        ~E if there are no digits remaining to be printed and the width allows it.
        (lp#883520)