Douglas Katzman | 31 Oct 05:44 2014
Picon
Picon

master: Replace a bunch of FIXMEs with a couple KLUDGEs.

The branch "master" has been updated in SBCL:
       via  24fce622e0f5c86996c66bc1371447c0bb4aecaa (commit)
      from  ed874d279682de5788f4d2a6dcf7b6edbfc73b20 (commit)

- Log -----------------------------------------------------------------
commit 24fce622e0f5c86996c66bc1371447c0bb4aecaa
Author: Douglas Katzman <dougk <at> google.com>
Date:   Thu Oct 30 23:53:01 2014 -0400

    Replace a bunch of FIXMEs with a couple KLUDGEs.

    This change gets rid of all symbols in SB-KERNEL that pertain to 64-bit
    functions in a 32-bit target by altering the hack in Genesis that assumes
    that for a subset of packages, all symbols present at dump time must
    be interned in the cold core regardless of whether the symbol was observed
    during loading of cold fasls.  Removing SB!KERNEL from the list of magic
    packages reverts to the desirable behavior of interning only as needed.

    Doing this exposed an interesting aspect of the DEFERR macro:
    its expansion never mentions the symbol being defined, and use of that
    symbol by way of GENERATE-ERROR-CODE also never mentions it.
    To avoid disappearing error symbols, DEFERR now contains a counter-hack.
    Nonetheless I think this is an improvement, as it avoids polluting
    package-data-list with reader conditionals or somesuch.

    There are some issues in SB!C still. Additionally, this exposed the fact
    that TWO-ARG-{/=,<=,>=} were not supposed to be present in x86 targets.
---
 package-data-list.lisp-expr       |   10 ++--------
 src/code/interr.lisp              |   11 +++++++++--
(Continue reading)

Douglas Katzman | 28 Oct 20:47 2014
Picon
Picon

master: Remove unnecessary code from CIRCLE-SUBST introduced in 88dab5bc.

The branch "master" has been updated in SBCL:
       via  ed874d279682de5788f4d2a6dcf7b6edbfc73b20 (commit)
      from  923501ac6af1f83efd6762073ccf09961a2755e9 (commit)

- Log -----------------------------------------------------------------
commit ed874d279682de5788f4d2a6dcf7b6edbfc73b20
Author: Douglas Katzman <dougk <at> google.com>
Date:   Tue Oct 28 15:44:51 2014 -0400

    Remove unnecessary code from CIRCLE-SUBST introduced in 88dab5bc.

    The fix that avoided reading read raw slots with %INSTANCE-REF
    also "fixed" the code to look for (impossible) circularities in such slots.
---
 src/code/sharpm.lisp |    8 +-------
 1 files changed, 1 insertions(+), 7 deletions(-)

diff --git a/src/code/sharpm.lisp b/src/code/sharpm.lisp
index dffe3d7..751f227 100644
--- a/src/code/sharpm.lisp
+++ b/src/code/sharpm.lisp
 <at>  <at>  -275,13 +275,7  <at>  <at> 
                     (let* ((old (%instance-ref tree i))
                            (new (circle-subst old-new-alist old)))
                       (unless (eq old new)
-                        (setf (%instance-ref tree i) new))))
-                  (do ((i 0 (1+ i)))
-                      ((= i n-untagged))
-                    (let* ((old (%raw-instance-ref/word tree i))
-                           (new (circle-subst old-new-alist old)))
(Continue reading)

Christophe Rhodes | 28 Oct 18:51 2014
Picon
Picon

master: fix Huffman table build non-determinism

The branch "master" has been updated in SBCL:
       via  923501ac6af1f83efd6762073ccf09961a2755e9 (commit)
      from  4d2aa91f0d97473805cb7992bef9dcf727ea1465 (commit)

- Log -----------------------------------------------------------------
commit 923501ac6af1f83efd6762073ccf09961a2755e9
Author: Christophe Rhodes <csr21 <at> cantab.net>
Date:   Tue Oct 28 17:47:37 2014 +0000

    fix Huffman table build non-determinism

    when building, there might be symbols in the symbol code with
    the same implied probability (case in point, the #\( and #\)
    characters).  We must make sure that those are processed in
    the same order no matter the host's hash-table implementation,
    so insert enough SORT / STABLE-SORTs to make that happen.

    The hash-table manipulations around the Huffman database in
    src/code/target-char.lisp do not lead to any non-determinism:
    the outputs eventually get sorted by guaranteed-unique keys
    (the character code, or the character name's encoding relative
    to the now-deterministic Huffman table).
---
 src/code/huffman.lisp |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/code/huffman.lisp b/src/code/huffman.lisp
index 51f088f..fbc809a 100644
--- a/src/code/huffman.lisp
+++ b/src/code/huffman.lisp
(Continue reading)

Douglas Katzman | 28 Oct 18:42 2014
Picon
Picon

master: Fix overly conservative behavior of update_page_write_prot().

The branch "master" has been updated in SBCL:
       via  4d2aa91f0d97473805cb7992bef9dcf727ea1465 (commit)
      from  69c0947a38a31b9ec13c687721865497bcc4490c (commit)

- Log -----------------------------------------------------------------
commit 4d2aa91f0d97473805cb7992bef9dcf727ea1465
Author: Douglas Katzman <dougk <at> google.com>
Date:   Tue Oct 28 13:02:37 2014 -0400

    Fix overly conservative behavior of update_page_write_prot().

    When scanning for old->young pointers, ignore immediate values
    that might happen to return a valid result from find_page_index().
    At worst, this caused pages to fail to be protected when they could
    have been, so it was not damaging, only suboptimal.
---
 src/runtime/gencgc.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/runtime/gencgc.c b/src/runtime/gencgc.c
index 6e68122..e4c5b3c 100644
--- a/src/runtime/gencgc.c
+++ b/src/runtime/gencgc.c
 <at>  <at>  -2590,10 +2590,10  <at>  <at>  update_page_write_prot(page_index_t page)

     for (j = 0; j < num_words; j++) {
         void *ptr = *(page_addr+j);
-        page_index_t index = find_page_index(ptr);
+        page_index_t index;

(Continue reading)

Douglas Katzman | 28 Oct 16:18 2014
Picon
Picon

master: Remove dead variable

The branch "master" has been updated in SBCL:
       via  69c0947a38a31b9ec13c687721865497bcc4490c (commit)
      from  7db8f1a3d92c23a2459eef8fd899ac542c926d3c (commit)

- Log -----------------------------------------------------------------
commit 69c0947a38a31b9ec13c687721865497bcc4490c
Author: Douglas Katzman <dougk <at> google.com>
Date:   Tue Oct 28 10:58:46 2014 -0400

    Remove dead variable
---
 src/code/reader.lisp |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)

diff --git a/src/code/reader.lisp b/src/code/reader.lisp
index aecd4fa..3a572e5 100644
--- a/src/code/reader.lisp
+++ b/src/code/reader.lisp
 <at>  <at>  -33,10 +33,6  <at>  <at> 
 ;;; be sure to update the duplicated definition in "src/code/print.lisp"
 (defglobal *standard-readtable* nil)

-(defvar *old-package* nil
-  #!+sb-doc
-  "the value of *PACKAGE* at the start of the last read, or NIL")
-
 ;;; In case we get an error trying to parse a symbol, we want to rebind the
 ;;; above stuff so it's cool.

-----------------------------------------------------------------------
(Continue reading)

Christophe Rhodes | 28 Oct 13:10 2014
Picon
Picon

(webpage) master: Update for 1.2.5

The branch "master" has been updated in SBCL webpage:
      from  88a8fef019b4ee543563e2ba13df975dbb4cb469 (commit)

- Log -----------------------------------------------------------------
commit 7b36ef0ced9cc14d13758199cefc63018d6531d7
Author: Christophe Rhodes <csr21 <at> cantab.net>
Date:   Tue Oct 28 12:10:05 2014 +0000

    Update for 1.2.5
---
 platform-support-platforms.lisp |    2 +-
 sbcl                            |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/platform-support-platforms.lisp b/platform-support-platforms.lisp
index 75850ea..bf345b7 100644
--- a/platform-support-platforms.lisp
+++ b/platform-support-platforms.lisp
 <at>  <at>  -24,7 +24,7  <at>  <at> 
 (define-status :not-applicable "not-applicable" "No such system" " ")

 (define-port :x86 :linux :available "1.0.58")
-(define-port :x86-64 :linux :available "1.2.4")
+(define-port :x86-64 :linux :available "1.2.5")
 (define-port :armel :linux :available "1.2.1")
 (define-port :armhf :linux :available "1.2.1")
 (define-port :powerpc :linux :available "1.0.28")
diff --git a/sbcl b/sbcl
index 849bc74..7db8f1a 160000
--- a/sbcl
(Continue reading)

Christophe Rhodes | 28 Oct 12:54 2014
Picon
Picon

annotated tag sbcl-1.2.5: created. sbcl-1.2.5

The annotated tag "sbcl-1.2.5" has been created in SBCL:
        at  b7daab40fed7b1258a0da458d1594c5828b4831f (tag)
   tagging  7db8f1a3d92c23a2459eef8fd899ac542c926d3c (commit)
  replaces  sbcl-1.2.4
 tagged by  Christophe Rhodes
        on  Tue Oct 28 11:18:48 2014 +0000

- Log -----------------------------------------------------------------
changes in sbcl-1.2.5 relative to sbcl-1.2.4:
  * enhancement: sb-bsd-sockets now has basic support for IPv6
  * enhancement: An sb-unicode package has been added, containing
    many functions related to handling Unicode text
  * enhancement: The reader now normalizes symbols to Normalization
    Form KC (NFKC). This behavior can be disabled with
    SB-EXT:READTABLE-NORMALIZATION
  * enhancement: a style-warning is signaled if OPTIMIZE declarations
    multiply specify a quality with differing values. (lp#310267)
  * bug fix: conservatively pointed to pages wipe out unused dwords so
    that they cannot act as false roots in turn.
  * bug fix: the walker's handling of lexical variable and symbol-macro
    bindings is improved (lp#375326, lp#1368305)
  * bug fix: HANDLER-{BIND,CASE} no longer drop into ldb when a clause
    contains an undefined condition type; regression in 1.1.19 (lp#1378939)
  * bug fix: in interpreted code, inequality predicates did not type-check
    arguments that weren't examined, and a 1-argument use of MIN or MAX
    accepted a complex number. (lp#1373702)
  * bug fix: APROPOS and APROPOS-LIST handle inherited symbols correctly.
    (lp#1364413, thanks to Zach Beane)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
(Continue reading)

Christophe Rhodes | 28 Oct 12:53 2014
Picon
Picon

master: 1.2.5: will be tagged as "sbcl-1.2.5"

The branch "master" has been updated in SBCL:
       via  7db8f1a3d92c23a2459eef8fd899ac542c926d3c (commit)
      from  fb675390c4f6d801a7641da88d7e13dcb17db6c0 (commit)

- Log -----------------------------------------------------------------
commit 7db8f1a3d92c23a2459eef8fd899ac542c926d3c
Author: Christophe Rhodes <csr21 <at> cantab.net>
Date:   Tue Oct 28 11:18:48 2014 +0000

    1.2.5: will be tagged as "sbcl-1.2.5"
---
 NEWS |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/NEWS b/NEWS
index 7b2e33c..c0b7ce6 100644
--- a/NEWS
+++ b/NEWS
 <at>  <at>  -1,6 +1,6  <at>  <at> 
 ;;;; -*- coding: utf-8; fill-column: 78 -*-

-changes relative to sbcl-1.2.4:
+changes in sbcl-1.2.5 relative to sbcl-1.2.4:
   * enhancement: sb-bsd-sockets now has basic support for IPv6
   * enhancement: An sb-unicode package has been added, containing
     many functions related to handling Unicode text

-----------------------------------------------------------------------

hooks/post-receive
(Continue reading)

Douglas Katzman | 26 Oct 19:15 2014
Picon
Picon

master: Fix memory overrun error in REINIT.

The branch "master" has been updated in SBCL:
       via  fb675390c4f6d801a7641da88d7e13dcb17db6c0 (commit)
      from  62122ca908db5b8b92267a8e08f5c8cd5f38f977 (commit)

- Log -----------------------------------------------------------------
commit fb675390c4f6d801a7641da88d7e13dcb17db6c0
Author: Douglas Katzman <dougk <at> google.com>
Date:   Sun Oct 26 13:57:39 2014 -0400

    Fix memory overrun error in REINIT.

    See email on sbcl-devel 26-Oct-2014 with subject
      "REINIT clobbers 'dyndebug_config.fshow' on x86-64"
    The adjacency was lucky, otherwise more damage could have been done.
---
 src/code/cold-init.lisp |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/code/cold-init.lisp b/src/code/cold-init.lisp
index e4496da..11c359e 100644
--- a/src/code/cold-init.lisp
+++ b/src/code/cold-init.lisp
 <at>  <at>  -241,7 +241,7  <at>  <at> 
   #!-(and win32 (not sb-thread))
   (show-and-call signal-cold-init-or-reinit)
   (/show0 "enabling internal errors")
-  (setf (extern-alien "internal_errors_enabled" boolean) t)
+  (setf (extern-alien "internal_errors_enabled" int) 1)

   (show-and-call float-cold-init-or-reinit)
(Continue reading)

Christophe Rhodes | 25 Oct 13:07 2014
Picon
Picon

master: fixup the APROPOS fix

The branch "master" has been updated in SBCL:
       via  62122ca908db5b8b92267a8e08f5c8cd5f38f977 (commit)
      from  844efffa77733395addf22261d31ef4a9de0a9f8 (commit)

- Log -----------------------------------------------------------------
commit 62122ca908db5b8b92267a8e08f5c8cd5f38f977
Author: Christophe Rhodes <csr21 <at> cantab.net>
Date:   Sat Oct 25 12:07:20 2014 +0100

    fixup the APROPOS fix

    make sure we get each symbol only once.
---
 src/code/target-package.lisp |    9 +++++----
 tests/interface.impure.lisp  |    2 ++
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/code/target-package.lisp b/src/code/target-package.lisp
index 76e7df6..697c64f 100644
--- a/src/code/target-package.lisp
+++ b/src/code/target-package.lisp
 <at>  <at>  -1560,11 +1560,12  <at>  <at>  PACKAGE."
                                                             package))
                                   :external)))
                      (search string (symbol-name symbol) :test #'char-equal))
-            (push symbol result)))
+            (pushnew symbol result)))
         (sort result #'string-lessp))
-      (mapcan (lambda (package)
-                (apropos-list string-designator package external-only))
(Continue reading)

Christophe Rhodes | 23 Oct 13:13 2014
Picon
Picon

master: fix APROPOS/APROPOS-LIST and inherited symbols

The branch "master" has been updated in SBCL:
       via  844efffa77733395addf22261d31ef4a9de0a9f8 (commit)
      from  c82cc623c8af54cb309de7b77da9519950947298 (commit)

- Log -----------------------------------------------------------------
commit 844efffa77733395addf22261d31ef4a9de0a9f8
Author: Christophe Rhodes <csr21 <at> cantab.net>
Date:   Thu Oct 23 12:12:48 2014 +0100

    fix APROPOS/APROPOS-LIST and inherited symbols

    lp#1364413; thanks to Zach Beane.
---
 NEWS                         |    2 ++
 src/code/target-package.lisp |   10 +++++-----
 tests/interface.impure.lisp  |   20 ++++++++++++++++++++
 3 files changed, 27 insertions(+), 5 deletions(-)

diff --git a/NEWS b/NEWS
index ba8d4e6..7b2e33c 100644
--- a/NEWS
+++ b/NEWS
 <at>  <at>  -18,6 +18,8  <at>  <at>  changes relative to sbcl-1.2.4:
   * bug fix: in interpreted code, inequality predicates did not type-check
     arguments that weren't examined, and a 1-argument use of MIN or MAX
     accepted a complex number. (lp#1373702)
+  * bug fix: APROPOS and APROPOS-LIST handle inherited symbols correctly.
+    (lp#1364413, thanks to Zach Beane)

 changes in sbcl-1.2.4 relative to sbcl-1.2.3:
(Continue reading)


Gmane