sbcl.git
18 years ago0.9.11.38:
Alexey Dejneka [Sun, 16 Apr 2006 07:10:20 +0000 (07:10 +0000)]
0.9.11.38:
        * Fix MISC.555: remove a function from *FREE-FUNS* when it has
          only local calls.
        * Null :SLOT-NAMES argument of MAKE-LOAD-FORM-SAVING-SLOTS
          means no saved slots.

18 years ago0.9.11.37:
Alexey Dejneka [Fri, 14 Apr 2006 17:57:57 +0000 (17:57 +0000)]
0.9.11.37:
        * Fix MISC.367: when delaying IR1-conversion of an optional
          entry replace default value forms with their values.

18 years ago0.9.11.36: add support for IF in EVAL-IN-LEXENV
Nikodemus Siivola [Fri, 14 Apr 2006 08:58:15 +0000 (08:58 +0000)]
0.9.11.36: add support for IF in EVAL-IN-LEXENV
 I wonder why this wasn't here before?

18 years ago0.9.11.35: better package locking and more cleaning up after .31
Nikodemus Siivola [Fri, 14 Apr 2006 08:18:20 +0000 (08:18 +0000)]
0.9.11.35: better package locking and more cleaning up after .31
 * package lock violations from lexical operations always cause
    runtime PROGRAM-ERRORs
 * better EXTRA_CFLAGS handling in SB-GROVEL

18 years ago0.9.11.34:
Juho Snellman [Fri, 14 Apr 2006 07:23:04 +0000 (07:23 +0000)]
0.9.11.34:
Add support for sending data over UDP sockets to SB-BSD-SOCKETS
        (finally). Thanks to Faré for the patch.

18 years ago0.9.11.33: fix buglets introduced by .31 on non-Windows
Nikodemus Siivola [Fri, 14 Apr 2006 06:38:15 +0000 (06:38 +0000)]
0.9.11.33: fix buglets introduced by .31 on non-Windows
 * If we want to delete a file we must have write-permissions...
 * ...elide empty environment-variable from gcc arguments in def-to-lisp.lisp

18 years ago0.9.11.32:
Juho Snellman [Fri, 14 Apr 2006 05:53:09 +0000 (05:53 +0000)]
0.9.11.32:
         Treat TNs with no offset as deleted TNs when saving debug
         information. Fixes problem reported by NIIMI Satoshi
         (sbcl-devel "compilation error with optimization").

18 years ago0.9.11.31: misc win32 improvements
Nikodemus Siivola [Thu, 13 Apr 2006 22:52:55 +0000 (22:52 +0000)]
0.9.11.31: misc win32 improvements
  * Check for correct "expand" in canonicalize-whitespace, and skip
     canonicalization if it doesn't seem right. (Windows "expand" is
     something quite different.)
  * RUN-PROGRAM now always returns a process structure, which reports
     the exit-code of the process when :WAIT was true. :WAIT nil
     process-structures still keep their :RUNNING status indefinitely
     on Windows, though.
  * FIND-EXECUTABLE-IN-SEARCH-PATH actually searches the path, and adds
     "exe" as :TYPE if :TYPE is missing on Windows.
  * ASDF:RUN-SHELL-COMMAND searches for Bourne-shell on Windows, as there
     is no default location.
  * SB-GROVEL directly runs gcc and the groveler instead of indirecting
     via shell, and the groveler directly writes to the lisp-file instead
     of via stdout and shell redirection.
  * Hack SB-POSIX till it builds and passes all applicable tests on Windows.
     Mostly this involved plenty of #-win32, but a few tests needed to
     be adjusted for the delication Microsoft constitution.
  * Implement COPY-STREAM in ASDF-INSTALL so that it doesn't have to
     depend on SB-EXECUTABLE.
  * Take the .exe suffix into account when installing over an old SBCL
     on MSYS.
  * Adjust UNPARSE-NATIVE-WIN32-NAMESTRING slightly: Windows OS functions
     like stat don't like to have directory names ending with a slash.

This is good enough to run unpatched Slime with *COMMUNICATION-STYLE*
NIL, and build & pass tests with all contribs except SB-SIMPLE-STREAMS.

18 years ago0.9.11.30:
Juho Snellman [Tue, 11 Apr 2006 18:01:00 +0000 (18:01 +0000)]
0.9.11.30:
        Add Solaris 11 (Solaris Express) support.

18 years ago0.9.11.29:
Andreas Fuchs [Tue, 11 Apr 2006 11:45:40 +0000 (11:45 +0000)]
0.9.11.29:
Don't ignore reader-package-error in #+ and #- feature expressions.

18 years ago0.9.11.28:
Juho Snellman [Tue, 11 Apr 2006 08:37:22 +0000 (08:37 +0000)]
0.9.11.28:
        Misc.

* Support SETF function names in SB-INTROSPECT:FUNCTION-ARGLIST.
          (Patch by Todd Mokros on sbcl-devel)
        * Minor performance improvement in the x86-64 assembler. (Patch
          by Lutz Euler on sbcl-devel)
        * Add a recursive TRACE :ENCAPSULATE NIL (supposed to be part
          of a recent Solaris/x86 commit, but somehow didn't make it
          through)
        * Add a failing FILE-POSITION test on utf-8 streams. (Reported
          by Lutz Euler)

18 years ago0.9.11.27
Gabor Melis [Mon, 10 Apr 2006 16:08:45 +0000 (16:08 +0000)]
0.9.11.27
  * ignore SIGPIPE: it's better to handle the errno of write (2)

18 years ago0.9.11.26:
Nathan Froyd [Sun, 9 Apr 2006 16:48:18 +0000 (16:48 +0000)]
0.9.11.26:
MORE MICRO-OPTIMIZATION
... slightly smaller (ASH <fixnum> <constant>) => <fixnum> VOP on
    the x86.

18 years ago0.9.11.25:
Nathan Froyd [Sun, 9 Apr 2006 03:58:13 +0000 (03:58 +0000)]
0.9.11.25:
Make MAP-INTO and MAP with vectors slightly more efficient.
... use #'>= rather than #'= in BUILD-SEQUENCE-ITERATOR so the
    compiler can avoid a bounds check on INDEX (see also
    OPTIMIZATIONS, #16).

18 years ago0.9.11.24:
Nathan Froyd [Sat, 8 Apr 2006 02:06:26 +0000 (02:06 +0000)]
0.9.11.24:
Fix LOGBITP bug reported by James Knight, sbcl-devel 24 March 2006,
  AVER: "(EQ SB-NAME (SC-SB (TN-SC TN))) 'REGISTERS)".
... *sigh* one of these days, all the x86 LOGBITP bugs will be gone.

18 years ago0.9.11.23:
Juho Snellman [Fri, 7 Apr 2006 16:33:13 +0000 (16:33 +0000)]
0.9.11.23:
        Oops. Realize why the single-stepping code deleted in .20 was actually
        necessary after all. Restore most of it, add a test, and fix the
        original problem (extra trace traps on Solaris) by munging the
        processor's single-step flag in a different way.

18 years ago0.9.11.22
Gabor Melis [Fri, 7 Apr 2006 16:20:57 +0000 (16:20 +0000)]
0.9.11.22
  * fixed type derivation of float boundaries from numbers outside the
    appropriate float range

18 years ago0.9.11.21:
Juho Snellman [Fri, 7 Apr 2006 14:09:26 +0000 (14:09 +0000)]
0.9.11.21:
        Merge sbcl-devel "Subject: make-config.sh patch for linux/ppc"
        from Rex Dieter.

18 years ago0.9.11.20:
Juho Snellman [Fri, 7 Apr 2006 13:48:17 +0000 (13:48 +0000)]
0.9.11.20:
        Add tests for a couple of (unfixed) bugs (reported by James
        Knight and John Wiseman)

18 years ago0.9.11.19:
Juho Snellman [Fri, 7 Apr 2006 12:49:59 +0000 (12:49 +0000)]
0.9.11.19:
        Make the test suite pass on Solaris/x86.

        * Fix a number of bashisms in test/*.sh
* :ENCAPSULATE NIL tracing:
          ... In the breakpoint handling internals use the signal context
              FP/PC directly to construct the frame, instead of walking through
              the backtrace until a matching frame is found.
          ... Kill the single-stepper remains in x86(-64)-arch.c. Turning
              on processor single-stepping with signal context frobbing
              was causing extra trace traps, and the code for handling those
              was presumably already lost a long time ago.
        * Floating point exception handling:
          ... Define os_context_fp_control, and use it instead of the stub
              implementation in x86-vm.lisp.
        * Mark the usual backtrace tests as expected to fail on this OS too

18 years ago0.9.11.18:
Christophe Rhodes [Fri, 7 Apr 2006 11:41:44 +0000 (11:41 +0000)]
0.9.11.18:
After Gary King (sbcl-devel 2006-04-06), improve DOCUMENTATION
on condition classes.
... also improve the 'STRUCTURE doc-type.
... tests.

18 years ago0.9.11.17
Rudi Schlatte [Fri, 7 Apr 2006 08:47:14 +0000 (08:47 +0000)]
0.9.11.17
  Merge patch "Backtrace on Win32" (sbcl-devel 2006-01-14) (Alastair
  Bridgewater)

18 years ago0.9.11.16:
Christophe Rhodes [Thu, 6 Apr 2006 10:39:28 +0000 (10:39 +0000)]
0.9.11.16:
Fix for VECTOR-T-P (bug reported by Utz-Uwe Haus sbcl-devel
2006-03-25).
... add test cases.
... also much whitespaceification, apparently.

18 years ago0.9.11.15:
Nathan Froyd [Wed, 5 Apr 2006 12:37:56 +0000 (12:37 +0000)]
0.9.11.15:
Restore annotation of calls to assembly routines in disassemblies.

18 years ago0.9.11.14
Rudi Schlatte [Wed, 5 Apr 2006 12:02:02 +0000 (12:02 +0000)]
0.9.11.14
    Add forgotten files for win32 socket support (sigh)

18 years ago0.9.11.13
Rudi Schlatte [Wed, 5 Apr 2006 08:47:16 +0000 (08:47 +0000)]
0.9.11.13
  Merge Timothy Ritchey's win32 megapatch:
  * user-homedir-pathname and initfile fixes (by Yaroslav Kavenchuk)
  * run-program (by Mike Thomas)
  * sockets (Timothy Ritchey)

  With this patch, sbcl has been reported to run SLIME on win32.

  ... apologies if I got any credits wrong, the patches have been
      floating around quite a bit - if you contributed something in
      there and the NEWS entry doesn't mention you, just drop me a
      note and I'll update it accordingly.

18 years ago0.9.11.12
Rudi Schlatte [Wed, 5 Apr 2006 07:46:56 +0000 (07:46 +0000)]
0.9.11.12
    new toplevel options --no-sysinit, --no-userinit to inhibit
    loading the corresponding init files
    ... also fixes the win32 build failure that motivated this change

18 years ago0.9.11.11: fix SET-SYNTAX-FROM-CHAR buglet
Nikodemus Siivola [Wed, 5 Apr 2006 07:08:32 +0000 (07:08 +0000)]
0.9.11.11: fix SET-SYNTAX-FROM-CHAR buglet

18 years ago0.9.11.10:
Juho Snellman [Wed, 5 Apr 2006 06:51:06 +0000 (06:51 +0000)]
0.9.11.10:
Fix contrib build on Solaris (and other platforms where /bin/sh
        really is a Posix sh).

18 years ago0.9.11.9:
Juho Snellman [Wed, 5 Apr 2006 06:24:10 +0000 (06:24 +0000)]
0.9.11.9:
Changes to LISTEN for 0.9.11 caused it to sometimes return T even
        when reads on the stream could possibly block, due to overzealous
        updates of the FD-STREAM-LISTEN slot. Fix this, and rewrite the
        :LISTEN case in FD-STREAM-MISC-ROUTINE to be somewhat less convoluted.

18 years agoFix typo in arch_clear_pseudo_atomic_interrupted refactoring.
Christophe Rhodes [Wed, 29 Mar 2006 11:29:44 +0000 (11:29 +0000)]
Fix typo in arch_clear_pseudo_atomic_interrupted refactoring.

18 years ago0.9.11.7
Rudi Schlatte [Wed, 29 Mar 2006 09:27:26 +0000 (09:27 +0000)]
0.9.11.7
    Merge "patch for sb-md5" (sbcl-devel 2006-03-29, Yaroslav Kavenchuk)
    ... conditionalize /dev/nul for windows

18 years ago0.9.11.6
Rudi Schlatte [Wed, 29 Mar 2006 09:13:08 +0000 (09:13 +0000)]
0.9.11.6
    Merge "patch for sb-grovel" (sbcl-devel 2006-03-29)
    ... conditionalize temporary executable name for windows

18 years ago0.9.11.5
Rudi Schlatte [Tue, 28 Mar 2006 14:35:40 +0000 (14:35 +0000)]
0.9.11.5
    Make contrib modules build on win32/cygwin
    ... resolve bogus /cygdrive/x/... paths

18 years ago0.9.11.4
Gabor Melis [Tue, 28 Mar 2006 09:59:06 +0000 (09:59 +0000)]
0.9.11.4
  * fixed constraint propagation of open/closed float boundaries

18 years ago0.9.11.3:
Christophe Rhodes [Mon, 27 Mar 2006 08:22:21 +0000 (08:22 +0000)]
0.9.11.3:
FORMAT ~:C and printing characters.  (PFD ansi-tests)

18 years ago0.9.11.2:
Christophe Rhodes [Mon, 27 Mar 2006 08:19:36 +0000 (08:19 +0000)]
0.9.11.2:
Fix for MISC.629 (PFD ansi-tests)
... all paths lead to the type system.

18 years ago0.9.11.1:
Christophe Rhodes [Mon, 27 Mar 2006 08:13:03 +0000 (08:13 +0000)]
0.9.11.1:
REMOVE-METHOD must return its generic function argument, even
if the method isn't one of the generic function's.  Caught by
PFD ansi-tests

18 years ago0.9.11:
William Harold Newman [Sun, 26 Mar 2006 23:59:14 +0000 (23:59 +0000)]
0.9.11:
release, will be tagged as sbcl_0_9_11

18 years ago0.9.10.48:
Christophe Rhodes [Fri, 24 Mar 2006 16:45:06 +0000 (16:45 +0000)]
0.9.10.48:
Update asdf from upstream.
... delete scratch packages;
... no more creation of dubious pathnames.

18 years ago0.9.10.47
Rudi Schlatte [Wed, 22 Mar 2006 11:39:27 +0000 (11:39 +0000)]
0.9.10.47
    Merge "Re: [Sbcl-devel] WIN32 patch v.2. - part1" (sbcl-devel 2006-03-22)
    ... Get external format for *stdin*, *stdout*, *stderr* via appropriate
        API calls
    ... cosmetic change: s/cp/codepage/ throughout

18 years ago0.9.10.46
Rudi Schlatte [Tue, 21 Mar 2006 15:51:51 +0000 (15:51 +0000)]
0.9.10.46
    Commit sbcl-devel "WIN32 patch v.2. - part1 v.2."
    ... get default-external-format via api calls on win32

18 years ago0.9.10.45:
Christophe Rhodes [Mon, 20 Mar 2006 18:01:38 +0000 (18:01 +0000)]
0.9.10.45:
Move the dynamic space down a tiny bit on ppc/linux, since some
kernels map the stack at the end of our heap.

18 years ago0.9.10.44:
Nathan Froyd [Mon, 20 Mar 2006 02:49:16 +0000 (02:49 +0000)]
0.9.10.44:
Apply Alastair Bridgewater's "Small inefficiency in tl-symbol-value
          access" patch, sbcl-devel 11-02-2006.
... take care of cases in {c-call,cell}.lisp too.

18 years ago0.9.10.43
Gabor Melis [Fri, 17 Mar 2006 17:31:29 +0000 (17:31 +0000)]
0.9.10.43
  * add type constraint to variables in the consequent in situations
    similar to (IF (EQL X (LENGTH Y)) ...), where X is of type INDEX.

18 years ago0.9.10.42:
Christophe Rhodes [Fri, 17 Mar 2006 15:34:51 +0000 (15:34 +0000)]
0.9.10.42:
In this exciting world of Windows support, we might have files
named *.FASL not found by a find for *.fasl.
... and, argh, -iname is a GNUism.  Try harder to delete things
in contrib/ anyway.
... tidy up asdf-stub.lisp while I'm at it.

18 years ago0.9.10.41:
Juho Snellman [Thu, 16 Mar 2006 18:57:17 +0000 (18:57 +0000)]
0.9.10.41:
Kill the silly *NAME->CLASS->SLOTD-TABLE* PCL cache.

        * Remove the code that updated the table
        * Rewrite the only user of the data stored in the table
          (MAKE-ACCESSOR-TABLE) to recompute it from scratch each time
        * Which actually ends up being faster than using the table,
          speeding the loading of CLOS-using FASLs a bit
        * Reduce core size by a 900 kB on x86-64

18 years ago0.9.10.40:
Christophe Rhodes [Thu, 16 Mar 2006 14:04:59 +0000 (14:04 +0000)]
0.9.10.40:
Fix unithreaded build (and incidentally a potential heap
corruption on purify, given a sufficiently small struct thread
or a sufficiently large UNBOUND_MARKER_WIDETAG)
... #ifdef LISP_FEATURE_SB_THREAD the offending code.

18 years ago0.9.10.39:
Christophe Rhodes [Thu, 16 Mar 2006 12:01:07 +0000 (12:01 +0000)]
0.9.10.39:
Implement and document SB-EXT:*CORE-PATHNAME*.
... communicate from runtime via SB-INT:*CORE-STRING*, rather
than constructing a pathname in C.

Related refactoring.
... since OS-COLD-INIT-OR-REINIT has exactly the same
functionality on all currently supported platforms,
move it into a common file;
... define common *common-static-symbols* and
*c-callable-static-symbols* for use in constructing
the per-backend *static-symbols* list, and to remove
the need for maintaining a separate list of callable
symbols in genesis.

18 years ago0.9.10.38:
Juho Snellman [Thu, 16 Mar 2006 03:24:13 +0000 (03:24 +0000)]
0.9.10.38:
        Add #\Uxxxx and #\Uxxxxxxxx read-syntax for characters. Make all
        characters readably printable even on non-Unicode streams. Patch by
        Robert Macomber (sbcl-devel "Unicode character names", 2006-03-06).

        * Also add a test.

18 years ago0.9.10.37:
Juho Snellman [Wed, 15 Mar 2006 17:48:25 +0000 (17:48 +0000)]
0.9.10.37:
The recent changes to LISTEN caused it to sometimes return NIL
        even when there was data already in the input buffer. Fix it.

18 years ago0.9.10.36:
Juho Snellman [Wed, 15 Mar 2006 14:25:29 +0000 (14:25 +0000)]
0.9.10.36:
Fix occasional test failures reported by Cyrus Harmon. RUN-PROGRAM
        sets up a signal handler which interferes with the test framework,
        so it needs to be run as an impure test.

18 years ago0.9.10.35
Cyrus Harmon [Wed, 15 Mar 2006 05:39:53 +0000 (05:39 +0000)]
0.9.10.35
    Removing DOLLARLITERAL and GNAMEDOLLAR macro cruft from
    x86-assem.S.
    Add generated {x86,ppc}-darwin files to src/runtime/.cvsignore.

18 years ago0.9.10.34
Cyrus Harmon [Wed, 15 Mar 2006 04:59:20 +0000 (04:59 +0000)]
0.9.10.34
    Fix disassembly of break-containing functions on Darwin
    ... switch on (word-imm-code chunk dstate) instead of
        byte-imm-code under Darwin
    ... whitespace to make word-imm match byte-imm

18 years ago0.9.10.33:
Juho Snellman [Wed, 15 Mar 2006 04:21:03 +0000 (04:21 +0000)]
0.9.10.33:
Fix CL:LISTEN to always return NIL at EOF, as required by
        CLTS.  (Patch by Stephen Compall on sbcl-devel "Re: fd-stream
        listen in fd-stream-misc-routine")

        (Also "oops". I somehow attributed 0.9.10.32 to the wrong James).

18 years ago0.9.10.32:
Juho Snellman [Wed, 15 Mar 2006 04:03:26 +0000 (04:03 +0000)]
0.9.10.32:
Make the streams created by RUN-PROGRAM bivalent. Patch by
        James Bielman on sbcl-devel, except:

        * Also bivalentify (bivalenticate? bivalentize?) the PTY stream
        * Add a test

18 years ago0.9.10.31
Cyrus Harmon [Wed, 15 Mar 2006 03:04:34 +0000 (03:04 +0000)]
0.9.10.31
    Fix Darwin instability problems. Darwin isn't reliably firing
    SIGTRAP handlers, so use UD2 to generate a SIGILL instead of INT3
    to generate a SIGTRAP and we check for this in the SIGILL handler
    and DTRT if we see this by calling the sigtrap_handler
    ... Define TRAP that uses UD2 (0x0b0f or 0F 0B) instead on Darwin
        and INT3 elsewhere in x86-assem.S
    ... Removed the bogus sigaltstack (was Darwin only, now gone) in
        bsd-os.c that I added in the course of trying to fix this
        problem
    ... #+darwin use UD2 instead of INT3 in compiler/x86 and add
        support for disassembling this as break

18 years ago0.9.10.30:
Cyrus Harmon [Wed, 15 Mar 2006 03:01:46 +0000 (03:01 +0000)]
0.9.10.30:
    Fix Darwin instability problems. Darwin isn't reliably firing
    SIGTRAP handlers, so use UD2 to generate a SIGILL instead of INT3
    to generate a SIGTRAP and we check for this in the SIGILL handler
    and DTRT if we see this by calling the sigtrap_handler
    ... Define TRAP that uses UD2 (0x0b0f or 0F 0B) instead on Darwin
        and INT3 elsewhere in x86-assem.S
    ... Removed the bogus sigaltstack (was Darwin only, now gone) in
        bsd-os.c that I added in the course of trying to fix this
        problem
    ... #+darwin use UD2 instead of INT3 in compiler/x86 and add
        support for disassembling this as break

18 years ago0.9.10.30
Rudi Schlatte [Tue, 14 Mar 2006 22:23:14 +0000 (22:23 +0000)]
0.9.10.30
    Unbreak the build (thanks to Eric Marsden for the quick patch)

18 years ago0.9.10.29
Rudi Schlatte [Tue, 14 Mar 2006 12:27:46 +0000 (12:27 +0000)]
0.9.10.29
    Linkage tables on win32
    ... heuristically choose a memory range ("does not break on my two
        systems, let's ship it")
    ... added some leftovers to cleanup.sh
    ... also #!+sb-doc-conditionalize docstrings in run-program.lisp

18 years ago0.9.10.28
Rudi Schlatte [Sat, 11 Mar 2006 19:10:23 +0000 (19:10 +0000)]
0.9.10.28
  Document run-program
  ... reformat docstring slightly so the texinfo formatter won't get
      confused
  ... add documentation for the various process struct accessors

18 years ago0.9.10.27:
Christophe Rhodes [Fri, 10 Mar 2006 17:40:27 +0000 (17:40 +0000)]
0.9.10.27:
Fix a typep / classoid / finalize-inheritance bug that was
exposed by removing the class-predicate (which meant that
classes were finalized in a different order).
... always update subclasses when we update a parent class.  No,
I don't know why (either Gerd's code or this
modification)
... test case

18 years ago0.9.10.26
Gabor Melis [Thu, 9 Mar 2006 13:05:22 +0000 (13:05 +0000)]
0.9.10.26
  * fixed endless loop on (SUBTYPEP NULL (OR UNK0 UNK1)) in the cross compiler

18 years ago0.9.10.25:
Juho Snellman [Thu, 9 Mar 2006 12:58:44 +0000 (12:58 +0000)]
0.9.10.25:
Port dynamic-extent vector support from x86 to x86-64.

18 years ago0.9.10.24:
Christophe Rhodes [Wed, 8 Mar 2006 18:49:54 +0000 (18:49 +0000)]
0.9.10.24:
Fix (I think) the %INSTANCE-REF build problems on PPC and
probably SPARC.
... the CTYPE-OF failure came about because the system didn't
know that (AND INSTANCE FUNCTION) was NIL.  Make it
so...
... and then delete a stale KLUDGE workaround in primtype.lisp
... this then built as far as stream.lisp, where the problem
was that (AND INSTANCE STREAM) was being "simplified"
to just STREAM, and then primtype didn't know that
STREAMs are subtypes of INSTANCE...
... which in fact they're not; CLOS allows us to construct
funcallable streams.  So...
... instead teach the system that (AND INSTANCE STREAM)
shouldn't be simplified...
... but (AND INSTANCE FD-STREAM) should.
... (also delete some crufty classoids: BASIC-STRUCTURE-CLASS
and FUNCALLABLE-STRUCTURE-CLASS were never used)
... tests for all the failing things in type.{before,after}-xc

18 years ago0.9.10.23:
Nathan Froyd [Tue, 7 Mar 2006 22:11:51 +0000 (22:11 +0000)]
0.9.10.23:
Unify the FOO and FOO-C VOPs in DEFINE-FULL-{REFFER,SETTER} on x86.
  Saves ~100K in core file size.

18 years ago0.9.10.22:
Nathan Froyd [Tue, 7 Mar 2006 19:06:41 +0000 (19:06 +0000)]
0.9.10.22:
        Remove spurious VOPs for translating %INSTANCE-{REF,SET}.
        ... These VOPs were based on SLOT-{REF,SET} and in all ports
            there were also translations based on DEFINE-FULL-REFFER or
            WORD-INDEX-REF.  However, at the very least, the
            %INSTANCE-SET VOP based on SLOT-SET was bogus, as it did not
            return a value, thereby generating incorrect code.
            Therefore, this VOP was either disabled (#+nil) or the
            alternative via DEFINE-FULL-REFFER was carefully defined
            with a lower :GENERATOR cost so that the VOP based on
            SLOT-SET would never be called.  This patch eliminates such
            magic and eliminates the corresponding %INSTANCE-REF VOP as
            well, since it does not appear to have any advantages over
            the one created via DEFINE-FULL-REFFER.
        ... See also sbcl-devel, 2002-02-11, "Dubious VOPs".  This patch
            does not implement the DEFINE-VOP magic discussed in the
            email.

18 years ago0.9.10.21:
Nathan Froyd [Tue, 7 Mar 2006 18:47:37 +0000 (18:47 +0000)]
0.9.10.21:
Add CMOV micro-optimization in GENERATE-CALL-SEQUENCE, too.

18 years ago0.9.10.20:
Christophe Rhodes [Tue, 7 Mar 2006 12:04:24 +0000 (12:04 +0000)]
0.9.10.20:
Move the stub definitions for contrib-type stuff into the
main runtime
... and don't build unix-dsos in contribs any more;
... should make binary distribution easier.

18 years ago0.9.10.19:
Christophe Rhodes [Tue, 7 Mar 2006 07:34:15 +0000 (07:34 +0000)]
0.9.10.19:
Add Alastair Bridgewater's chapter about calling conventions

18 years ago0.9.10.18:
Nathan Froyd [Mon, 6 Mar 2006 21:20:28 +0000 (21:20 +0000)]
0.9.10.18:
Micro-optimize DEFAULT-UNKNOWN-VALUES on x86{,-64} by using CMOV
... guard it with *BACKEND-SUBFEATURES* on the x86.

18 years ago0.9.10.17: fix bug #400, aka more correct CONSTANTP
Nikodemus Siivola [Mon, 6 Mar 2006 17:48:10 +0000 (17:48 +0000)]
0.9.10.17: fix bug #400, aka more correct CONSTANTP
 * To know that a function call is a constant we need to check that
    it doesn't signal an error in addition to knowing that the function
    is foldable.
 * To know that a THE form is constant we need to check that the
    value is of the right type and be prepared to deal with malformed
    type specifiers.
 * Tests, tests, tests.

 ...all in all, I'm starting to miss the evaluator branch.

18 years ago0.9.10.16:
Cyrus Harmon [Mon, 6 Mar 2006 09:59:33 +0000 (09:59 +0000)]
0.9.10.16:
    x86/Darwin support
    ... Add Config support and ape the darwin/ppc space fixup stuff.
    ... Align stack to 16-bytes as per ABI in %alien-funcall,
        c-call and show.
    ... Add darwin space params.
    ... Use an altstack for handling signals in hopes of giving signal
        handlers properly aligned stacks.
    ... Get registers and flags out of the mcontext properly. Needed
        to play some games to get sys/_types included in order to get
        the full definition of the mcontext struct which Apple tries
        to hide from us.
    ... Moved os_get_runtime_executable_path from ppc-darwin-os.c to
        new file darwin-os.c.
    ... Fix debugging #ifdefs in runtime.h
    ... #define hacks to x86-assem.S to keep Apple's brain-dead
        assembler happy. In particular, it doesn't like things like
        $NIL, so I had to play some games with the precompiler to make
        it happy, and it wants .globl instead of .global. Also fixed a
        couple raw .aligns that should have used the macros
    ... Align stack in ppc-assem.S:call_into_c
    ... Added x86-darwin-os.h
    ... #- out debug.impure test that causes bad things to happen on
        darwin/ppc as it seems to cause bad things on x86/darwin as
        well.
    ... adjust fails for float tests
    ... LDSO stubs for x86/darwin

18 years agoOops.
Alexey Dejneka [Mon, 6 Mar 2006 04:35:50 +0000 (04:35 +0000)]
Oops.

18 years ago0.9.10.15:
Alexey Dejneka [Mon, 6 Mar 2006 04:33:26 +0000 (04:33 +0000)]
0.9.10.15:
        Fix typo in (defconstant m-v-prog1); partially fix the bug
        in constant-folding reported by Paul F. Dietz in "New compiler
        bugs", sbcl-devel 2006-03-05.

18 years ago0.9.10.14:
Juho Snellman [Sat, 4 Mar 2006 21:45:33 +0000 (21:45 +0000)]
0.9.10.14:
Kill some dead code.

18 years ago0.9.10.13:
Juho Snellman [Sat, 4 Mar 2006 21:12:06 +0000 (21:12 +0000)]
0.9.10.13:
        Remove the x87 instruction definitions from the x86-64 backend for
        a significant core file size reduction. Patch by Lutz Euler.

18 years ago0.9.10.12:
Juho Snellman [Sat, 4 Mar 2006 21:07:48 +0000 (21:07 +0000)]
0.9.10.12:
The error branch in the win32 DLOPEN-OR-LOSE was calling
        SHARED-OBJECT-SAP instead of SHARED-OBJECT-HANDLE. (Patch from
        by Yaroslav Kavenchuk, sbcl-devel "Re: Where define shared-object-sap"
        on 2006-02-26).

18 years ago0.9.10.11:
Christophe Rhodes [Sat, 4 Mar 2006 19:58:26 +0000 (19:58 +0000)]
0.9.10.11:
Merge patch (Alastair Bridgewater 2006-02-06 / CSR 2006-03-03)
implementing a better calling convention on the x86 (and
probably a better one on the x86-64).
... increment fasl version, because mixing calling conventions
is a spectacular no-no.
... take this opportunity to put :gencgc on
*features-potentially-affecting...*, since mixing
gencgc and cheney allocation strategies on the ppc
is also a spectacular no-no.

18 years agoIn aliencomp.c #+(and ppc darwin) should be #!+(and ppc darwin), which
Cyrus Harmon [Thu, 2 Mar 2006 05:21:16 +0000 (05:21 +0000)]
In aliencomp.c #+(and ppc darwin) should be #!+(and ppc darwin), which
allows ppc builds to be able to cross-compile to other
architectures. This bug was originially introduced by yours truly in
the process of bringing the VOPs in question and this call to the over
from CMUCL.

18 years ago0.9.10.9:
Christophe Rhodes [Wed, 1 Mar 2006 09:10:32 +0000 (09:10 +0000)]
0.9.10.9:
Another try at the COPY-MORE-ARGS microoptimization, which was
in fact reverted inadvertantly by the ppc/gencgc merge.
... this time, schedule the instructions by hand to try to
avoid a stall.
... (whitespace.  *sigh*.)

18 years ago0.9.10.8:
Christophe Rhodes [Tue, 28 Feb 2006 14:22:54 +0000 (14:22 +0000)]
0.9.10.8:
Maybe fix some gc problems on ppc/gencgc?
... there's a workaround for non-descriptors in descriptor
registers which was previously !GENCGC but in fact should
have been !CONSERVATIVE or possibly !PARTITIONED_REGISTERS.
... whitespace in target-char.lisp

18 years ago0.9.10.7: oops. re-version last
Nikodemus Siivola [Tue, 28 Feb 2006 05:01:20 +0000 (05:01 +0000)]
0.9.10.7: oops. re-version last

18 years ago0.9.10.6: fix non-unicode build
Nikodemus Siivola [Tue, 28 Feb 2006 04:58:55 +0000 (04:58 +0000)]
0.9.10.6: fix non-unicode build
 ...I was _sure_ I'd tested this...

18 years ago0.9.10.6:
Juho Snellman [Tue, 28 Feb 2006 04:47:50 +0000 (04:47 +0000)]
0.9.10.6:
        Restore the old behaviour of never using mmap-tricks for memory
        zeroing on Solaris/gencgc, since doing so was causing GC crashes
        on Solaris/x86.

        Also some whitespace canonicalization.

18 years ago0.9.10.5: correct CONSTANTP
Nikodemus Siivola [Mon, 27 Feb 2006 15:03:08 +0000 (15:03 +0000)]
0.9.10.5: correct CONSTANTP
 * fix thinko in interactions between PROGV & IF and add a test to catch
    it.

18 years ago0.9.10.4: better CONSTANTP
Nikodemus Siivola [Mon, 27 Feb 2006 13:12:34 +0000 (13:12 +0000)]
0.9.10.4: better CONSTANTP
 * Recognizes constant argument calls to foldable functions and also
    deals with some simple special forms like.
 * Replace a ton of EVAL calls with CONSTANT-FORM-VALUE.

18 years ago0.9.10.3: Faster function calls via constant symbols
Nikodemus Siivola [Mon, 27 Feb 2006 11:07:31 +0000 (11:07 +0000)]
0.9.10.3: Faster function calls via constant symbols
 * Compile (FUNCALL 'FOO) as (FUNCALL (SB-C::GLOBAL-FUNCTION FOO))
    which is like (FUNCALL (FUNCTION FOO)) except that inline
    functions are not expanded and the lexical functions are ignored.

18 years ago0.9.10.2:
Christophe Rhodes [Mon, 27 Feb 2006 11:02:11 +0000 (11:02 +0000)]
0.9.10.2:
Fix remaining slot name publicness in standardized classes.
... be cowardly and just rename TYPE to %TYPE, but write a
comment about why this isn't really good enough.
... now we can test for our interpretation.
... document it, too

18 years ago0.9.10.1: Unicode character names -- aka More Bloat
Nikodemus Siivola [Mon, 27 Feb 2006 05:13:29 +0000 (05:13 +0000)]
0.9.10.1: Unicode character names -- aka More Bloat
 * Make CHAR-NAME and NAME-CHAR aware of the Unicode names when building
   with :SB-UNICODE.

18 years ago0.9.10:
William Harold Newman [Mon, 27 Feb 2006 03:08:03 +0000 (03:08 +0000)]
0.9.10:
release, tagged as sbcl_0_9_10

18 years ago0.9.9.38:
Christophe Rhodes [Wed, 22 Feb 2006 12:11:26 +0000 (12:11 +0000)]
0.9.9.38:
gencgc/ppc fixups
... fix the allocator/gc on threaded builds.  Whoops.
... STACK_GROWS_DOWNARD
... in pa_alloc/gencgc/!x86, actually do the stack manipulation
more plausibly.  (Don't carefully write the value we
want to preserve past the end of the stack, for one)
... whitespace.

18 years ago0.9.9.37:
Juho Snellman [Tue, 21 Feb 2006 23:40:36 +0000 (23:40 +0000)]
0.9.9.37:
        Implement os_get_runtime_exexutable_path() on Solaris
        (patch by Daisuke Homma).

        Move the os_get_runtime_exexutable_path() FreeBSD version
        check from compile-time to runtime (patch by NIIMI Satoshi).

18 years ago0.9.9.36:
Christophe Rhodes [Tue, 21 Feb 2006 22:59:29 +0000 (22:59 +0000)]
0.9.9.36:
Merge Cyrus Harmon's 7th gencgc merge candidate
... with the addition of idempotent implementations of
arch_clear_pseudo_atomic_interrupted() for
sparc, mips, alpha and hppa.  (the last three completely
untested).
... many, many changes, most of which are documented in
doc/internals-notes/GENCGC-PORTING-NOTES

(This commit may break horribly.  Please read, please test)

18 years ago0.9.9.35:
Nathan Froyd [Fri, 17 Feb 2006 20:56:26 +0000 (20:56 +0000)]
0.9.9.35:
Eliminate calls to GENERIC-< in SUBTRACT-BIGNUM-BUFFERS{,-WITH-LEN}
  by declaring a few types.

18 years ago0.9.9.34:
Christophe Rhodes [Fri, 17 Feb 2006 17:49:36 +0000 (17:49 +0000)]
0.9.9.34:
Merge fix from Peter Van Eynde (sbcl-devel 2006-02-11 "cosmetic
room bug") for a cosmetic room bug.
... also fix a distinctly non-cosmetic scrub-control-stack bug
resulting from the same issue.  This scrubbing failure
appeared to cause heap corruption in powerpc/gencgc
test builds; I think I understand why.

The Cheney GC zeros the unused parts of the lisp control stack
after it has completed the garbage collection.  This ensures
that, if the active stack had no garbage pointers at the start
of the collection, there is no region in the entire control
stack (used or unused) which contains a garbage pointer, since
every entry has either been scavenged or zeroed.  But since by
assumption we start off with no garbage pointers, by
mathematical induction we never scavenge one, so everything is
safe.

GENCGC doesn't perform this zeroing.  (Why?)  However,
SCRUB-CONTROL-STACK does, before a GC.  This is slightly more
dangerous, because we could in fact have incomplete stack frames
        lying below the stack pointer with an entry from a previous
        iteration of the heap, but I think it's OK by the same
        reasoning as before.  Failure to zero the stack, however, does
        leave the possibility of bogus pointers open when stack frames
        are extended but not every stack slot has yet been written to.
        This wasn't so much of an issue when the stack is
        scanned conservatively and ambiguous roots caused pinning, but
        under a precise stack scanning regime disaster ensues.

18 years ago0.9.9.33:
Christophe Rhodes [Fri, 17 Feb 2006 17:32:37 +0000 (17:32 +0000)]
0.9.9.33:
Fix the gencgc verification code for raw-slot-at-end
structure layout.

18 years ago0.9.9.32:
Christophe Rhodes [Fri, 17 Feb 2006 17:15:34 +0000 (17:15 +0000)]
0.9.9.32:
Fix hideously embarrassing ppc assembly bug in reg_LRA
computation.
... no longer go wrong if bit 15 of lra is set.

(The symptoms from this have been reported many, many times:
segmentation faults in the first triggered GC.  Kevin Rosenberg
reported it first from my trawl on sbcl-devel, but I think it's
been known for longer than that.  Previously it had been
dismissed as gcc miscompilation problems, because the problem
disappeared when using a different version of gcc, for any
individual developer: in retrospect, the fact that it was our
bug after all is pretty obvious from the fact that we were never
able to characterize particular versions of gcc which were bad.)

18 years ago0.9.9.31:
Nathan Froyd [Tue, 14 Feb 2006 19:38:38 +0000 (19:38 +0000)]
0.9.9.31:
Add a declaration to GET-LATIN-BYTES to silence some efficiency
  notes.  Makes the code smaller, too.

18 years ago0.9.9.30:
Nathan Froyd [Tue, 14 Feb 2006 19:30:12 +0000 (19:30 +0000)]
0.9.9.30:
PPC micro-optimization of COPY-MORE-ARG VOP.  Use LWZU/STWU to
  avoid ADDI instructions.