pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang/sbcl



Module Name:    pkgsrc
Committed By:   asau
Date:           Wed Aug 28 17:43:51 UTC 2013

Modified Files:
        pkgsrc/lang/sbcl: Makefile PLIST distinfo

Log Message:
Update to SBCL 1.1.11

Note that contrary to last month's message, the increased type
opacity in the compiler has not been fixed in this release cycle.

changes in sbcl-1.1.11 relative to sbcl-1.1.10:
  * enhancement: support building the manual under texinfo version 5.
    (lp#1189146)
  * enhancement: Windows builds no longer display the "Kitten of Death" message.
    A warning is instead appended to the regular banner, and may be muted with
    --noinform.  (lp#728247)
  * enhancement: support building under new linker handling of syscalls under
    NetBSD.  (thanks to Robert Swindells)
  * bug fix: undefined function errors are now properly reported on PPC and 
MIPS.
    (regression since 1.1.9)
  * bug fix: (funcall (function X junk)) didn't causes an error when X had a
    compiler macro.  (thanks to Douglas Katzman).
  * bug fix: signal a warning when defining a setf-function when a
    setf-expander is already present.  (thanks to Douglas Katzman).
  * bug fix: improved threading on PPC.
  * bug fix: ROOM works again on Windows.  (lp#1206456)
  * bug fix: Streams were flushed even when there was one byte still left in
    the buffer. (lp#910213)
  * bug fix: OPEN handles correctly when :if-exists and :if-does-not-exist are
    either NIL or :ERROR.  (reported by Jan Moringen)

As well as the release notes, appended below, it is worth noting
that some internal changes related to the optimization of type
tests for bounded positive integers might cause performance
regressions in code that dispatches based on the type of objects,
as in for example
  (typecase x
    ((unsigned-byte 24) ...[1])
    (t ...))
where in the region of code marked ...[1] the compiler could be expected
to infer that x was of type (unsigned-byte 24), but currently fails to
do so.  This can be worked around by inserting an explicit declaration,
and the developers hope to address this in the next release cycle.

changes in sbcl-1.1.10 relative to sbcl-1.1.9:
  * enhancement: ASDF has been updated to 3.0.2.
  * optimization: stack frames are packed more efficiently on x86oids, which
    ought to reduce the frequency of Methuselahn conservative references (it
    certainly helps with gc.impure.lisp / BUG-936304 on x86).
  * optimization: on x86 and x86-64, integer negation forms like (- x) are now
    recognized in modular arithmetic contexts, and compile to native negate,
    rather than going through bignums only to keep the low bits.
  * bug fix: Compiling potential modularic arithmetic forms does not cause type
    errors when some integer types lack lower or upper bounds. (lp#1199127)
  * bug fix: Non-trivial modular arithmetic forms are always cut to the right
    bitwidth before being used in a non-modular context. (lp#1199428)
  * bug fix: Multiple catch/unwind blocks in a single function are now
    allocated in the right stack order on win32. (lp#1072739)

changes in sbcl-1.1.9 relative to sbcl-1.1.8:
  * new feature: the contrib SB-GMP links with libgmp at runtime to speed
    up arithmetic on bignums and ratios.  (contributed by Stephan Frank)
  * enhancement: disassemble now annotates some previously missing static
    functions, like LENGTH.
  * enhancement: clean.sh now also cleans doc/internals.
  * enhancement: SB-EXT:PRINT-SYMBOL-WITH-PREFIX can be used within ~// to
    print a symbol with a package prefix.
  * enhancement: The debugger and backtracing are more robust against buggy
    PRINT-OBJECT methods.
  * optimization: calls to static functions on x86-64 use less instructions.
  * optimization: compute encode-universal-time at compile time when possible.
  * optimization: when referencing internal functions as #'x, don't go through
    an indirect fdefn structure.
  * optimization: SLEEP doesn't cons on non-immediate floats and on ratios.
  * optimization: (mod fixnum) type-checks are performed using one unsigned
    comparison, instead of two.
  * optimization: enable more modular arithmetic transforms in the presence of
    conditionals.
  * optimization: bitwise OR forms can now trigger modular arithmetic as well,
    when the result is known to be negative.
  * optimization: recognize more cases of useless LOGAND/LOGIOR with constants.
  * optimization: comparisons between rationals and constant floats or between
    integers and constant ratios are now converted to rationals/integers at
    compile time.
  * optimization: Smaller and faster DOUBLE-FLOAT-LOW-BITS on x86-64.
  * bug fix: problems with NCONC type derivation (reported by Jerry James).
  * bug fix: EXPT type derivation no longer constructs bogus floating-point
    types.  (reported by Vsevolod Dyomkin)
  * bug fix: sb-bsd-sockets has correct declaration of the canonname field of
    addrinfo. (lp#1187041, patch by Jerry James)
  * bug fix: uninitialized type-error conditions can now be printed.
    (lp#1184586)
  * bug fix: tests for sb-bsd-sockets no longer use a predefined port for
    listening, allowing several tests to run in parallel.
  * bug fix: during disassembly to *COMPILER-TRACE-OUTPUT* instruction
    prefixes as used on x86 and x86-64 no longer sometimes print incorrectly.
    (lp#1085729)
  * bug fix: Specialised SIMD-PACK types can be negated.
  * bug fix: Modular arithmetic is more robust. (incidentally fixes another bug
    reported by Eric Marsden)
  * bug fix: FP return values from foreign calls are always rounded to single
    or double float precision on x87.
  * bug fix: Known-safe vector access on x86oids should not fail spuriously
    when the index is of the form (+ x constant-positive-integer).
  * bug fix: Remove GPL-licensed files from source distribution. (lp#1185668)
  * bug fix: backtrace printer no longer tries to create very large lists when
    the arg-count register is clobberred by other code. (lp#1192929)
  * bug fix: x86 should never signal an FP exception while boxing an FP value,
    a situation that lands us into ldb.


To generate a diff of this commit:
cvs rdiff -u -r1.48 -r1.49 pkgsrc/lang/sbcl/Makefile
cvs rdiff -u -r1.17 -r1.18 pkgsrc/lang/sbcl/PLIST
cvs rdiff -u -r1.31 -r1.32 pkgsrc/lang/sbcl/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index