sbcl.git
19 years ago0.8.21.50:
Alexey Dejneka [Tue, 19 Apr 2005 05:54:17 +0000 (05:54 +0000)]
0.8.21.50:
        * Changed implementation on ALLOCATE-VECTOR on X86:
        ... two VOPs: A-V-ON-HEAP and A-V-ON-STACK;
        ... choice between them is made with LTN-ANALYZEr;
        ... A-V-ON-STACK always fills vector with zeroes (fixes bug
            reported by Brian Downing).

19 years ago0.8.21.49: Fixes for OS X 10.4 "Tiger"
Brian Mastenbrook [Sun, 17 Apr 2005 19:41:25 +0000 (19:41 +0000)]
0.8.21.49: Fixes for OS X 10.4 "Tiger"
  * Binaries built on OS X 10.4 will not run on OS X 10.2.8 "Jaguar"
  * Add a . at the end of a gethostbyname test in sb-bsd-sockets to both work around a resolver bug on Tiger and robustify the test
  * Thanks to Gary Byers for the alternate sigreturn bug fix
  * Bump the upcoming version number in NEWS to 0.9.0 (woohoo!)

19 years ago0.8.21.48:
Alexey Dejneka [Sun, 17 Apr 2005 09:08:34 +0000 (09:08 +0000)]
0.8.21.48:
        * As suggested by CSR, when (> SAFETY 0) allocate vector on
          stack only when it provably fits in one page.
        * Properly order *POLICY-DEPENDENT-QUALITIES*: later qualities
          may refer earlier.

19 years ago0.8.21.47:
Christophe Rhodes [Sat, 16 Apr 2005 10:02:38 +0000 (10:02 +0000)]
0.8.21.47:
Merge patch (from Wendall Marvel) for unchecked method group
when there is a single group with pattern *

19 years ago0.8.21.46:
Alexey Dejneka [Sat, 16 Apr 2005 06:18:30 +0000 (06:18 +0000)]
0.8.21.46:
        * On X86 simple forms of MAKE-ARRAY can allocate result on
          stack.
        ... ALLOCATE-VECTOR is now a VOP on X86.

19 years ago0.8.21.45:
Christophe Rhodes [Fri, 15 Apr 2005 21:36:06 +0000 (21:36 +0000)]
0.8.21.45:
Merge patch (Zach Beane sbcl-devel 2005-04-13) for redefining
classes whose previous definition had an accessor which collided
with a function.

19 years ago0.8.21.44:
Christophe Rhodes [Fri, 15 Apr 2005 21:28:50 +0000 (21:28 +0000)]
0.8.21.44:
Fix bug reported by Cyrus Harmon sbcl-devel 2005-04-14
... remove AVER CLASS and AVER BUILT-IN-TYPE, because those
can be tickled by wrong but well-intentioned user code.

19 years ago0.8.21.43: "oops" -- that wasn't an optimization!
Nikodemus Siivola [Fri, 15 Apr 2005 16:08:52 +0000 (16:08 +0000)]
0.8.21.43: "oops" -- that wasn't an optimization!
 * don't transform EQL to EQ if either argument is known to
    be a fixnum, as we have backend magic to deal with that. The
    effect of the previous "improvement" was rather horrible
    for bignums. Still apply the transform if the fixnumness is
    in question.

19 years ago0.8.21.42:
Juho Snellman [Fri, 15 Apr 2005 13:57:49 +0000 (13:57 +0000)]
0.8.21.42:
Fix bug in scoping of free special declarations. CLHS 3.3.4:
        "The scope of free declarations specifically does not include
        initialization forms for bindings established by the form
        containing the declarations."

        * Add a :BINDING-FORM-P parameter to PROCESS-DECLS. If true,
          return a list of the VARs created by PROCESS-SPECIAL-DECL
          for free bindings instead of adding them into the lexenv
          immediately.
        * PROCESSING-DECLS optionally uses :BINDING-FORM-P and
          binds the list to a supplied variable in the PROCESSING-DECLS
          body.
        * Calls to PROCESS-DECLS / PROCESSING-DECLS related to binding
          forms use the above changes.
        * The VAR list is threaded through a bunch of IR1 lambda
          translation utility functions, all of which sooner or later
          end up calling IR1-CONVERT-AUX-BINDINGS.
        * Before IR1-CONVERT-AUX-BINDINGS converts the body, add the
          variables in the list to the lexenv.

19 years ago0.8.21.41
Daniel Barlow [Thu, 14 Apr 2005 22:34:33 +0000 (22:34 +0000)]
0.8.21.41
Various cleanup to remove (a) code used only in the pre-futex
queue system, (b) some threading code copied blindly from
the x86 backend to x86-64 but is unlikely ever to actually
work there

19 years ago0.8.21.40
Daniel Barlow [Thu, 14 Apr 2005 21:12:01 +0000 (21:12 +0000)]
0.8.21.40
Add TRACE-FILE to the allowed options in build-order.lisp-expr.
This causes a foo.trace file to be emitted containing grungey
VOP/template/assembly/etc information which may help when
debugging a backend

19 years ago0.8.21.39: implement optimization #25
Nikodemus Siivola [Thu, 14 Apr 2005 14:05:20 +0000 (14:05 +0000)]
0.8.21.39: implement optimization #25
 * transform EQL to EQ when at least other argument is known to be
    (OR FIXNUM (NOT NUMBER)).

19 years ago0.8.21.38: fix bug 211e
Nikodemus Siivola [Thu, 14 Apr 2005 10:24:10 +0000 (10:24 +0000)]
0.8.21.38: fix bug 211e
 * mark duplicate keyword arguments as ignored in CONVERT-MORE-CALL.

19 years ago0.8.21.37: fix bug 305
Nikodemus Siivola [Wed, 13 Apr 2005 21:08:25 +0000 (21:08 +0000)]
0.8.21.37: fix bug 305
 * annotate the inline/notinline fun with type-restrictions from the
    environment.

19 years ago0.8.21.36: TRACE :ENCAPSULATE NIL broken on ppc/darwin
Nikodemus Siivola [Wed, 13 Apr 2005 13:48:43 +0000 (13:48 +0000)]
0.8.21.36: TRACE :ENCAPSULATE NIL broken on ppc/darwin
 * record bug.
 * add test-case for other platform.
 * test normal trace for good measure.

19 years ago0.8.21.35:
Brian Downing [Tue, 12 Apr 2005 20:14:48 +0000 (20:14 +0000)]
0.8.21.35:
        PPC allocate-vector fix, plus OpenMCL buildability ...
        ... write a 0 at the end of the allocated vector to ensure
            all of its pages are unprotected.  Otherwise if one is
            passed off to C (by READ-N-BYTES for example) the GC
            trigger can be hit in foreign code.  (Compare to SPARC)
        ... revert "#+cmu #+cmu a b" back to "#+cmu a #+cmu b",
            as OpenMCL and ACL's readers have buggy implementations
            of CLHS 2.4.8.17.

19 years ago0.8.21.34:
Christophe Rhodes [Mon, 11 Apr 2005 08:59:22 +0000 (08:59 +0000)]
0.8.21.34:
How to lose friends and alienate people...
... actually make constant-folding failure a full warning in the
cross-compiler (but not the target).
... fix the problem this reveals on x86-64.
Meanwhile, "uname -p"?  Change to -m.

19 years ago0.8.21.33: make doctrings.lisp understand embedded examples better
Nikodemus Siivola [Sun, 10 Apr 2005 16:51:48 +0000 (16:51 +0000)]
0.8.21.33: make doctrings.lisp understand embedded examples better
 ... sufficiently well to make less of a hogwash of the FINALIZE
     documentation at any rate.

19 years ago0.8.21.32: improvement for the space reservation mechanism on OS X
Brian Mastenbrook [Sun, 10 Apr 2005 15:34:46 +0000 (15:34 +0000)]
0.8.21.32: improvement for the space reservation mechanism on OS X
  * The C runtime is no longer relinked after running nm, which should avoid
    some cases where symbols moved when linking in the read-only space reservation
object. This was previously observed as segfaults in target-2 and could be worked
around by choosing a different C compiler.
  * Space is now reserved for each of our fixed-address spaces on OS X, currently:
      * read-only space
  * static space
  * dynamic-1 and dynamic-2 spaces
  * linkage table space
Should Apple ever decide to move the malloc heap again, none of these spaces will be picked
because their virtual memory ranges will have been reserved by the linker.

19 years ago0.8.21.31: tweak finalizers, thighten spec further
Nikodemus Siivola [Sun, 10 Apr 2005 12:55:54 +0000 (12:55 +0000)]
0.8.21.31: tweak finalizers, thighten spec further
 * sprinkle WITHOUT-GCING around, so that we won't enter GC while
    holding the lock on finalizer store.
 * specify that finalizers run in an unpredictable dynamic scope and
    must be fully re-entrant. Add a few examples for good measure.
 * add finalizer, weak pointer, and after gc hook documentation to the
    manual.

19 years ago0.8.21.30:
Alexey Dejneka [Sun, 10 Apr 2005 04:54:22 +0000 (04:54 +0000)]
0.8.21.30:
        * Fix misc.548: weakening of (VALUES (MEMBER A B C) &OPTIONAL)
          produces (VALUES &OPTIONAL SYMBOL) with different number of
          required/optional parameters.
        * Fix DATA-VECTOR-SET-C/SIMPLE-BIT-VECTOR on Alpha-32: srl-sll
          does not clean up upper bit (found by regression tests).

19 years ago0.8.21.29:
Juho Snellman [Sat, 9 Apr 2005 21:28:39 +0000 (21:28 +0000)]
0.8.21.29:
TRACE :ENCAPSULATE NIL was broken by a recent function signature
        change in the debugger internals. Fix this, and add support for
        :ENCAPSULATE NIL on x86-64.

        * Pass stream to PRINT-FRAME-CALL from ntrace.lisp.
* Port over some of Daniel Barlow's fixes to x86-64-assem.S from
          amd64-pthreads-branch, fix fun_end_breakpoint_guts.
        * Fixed some magic constants in the x86-64 runtime
* Various 64-bit cleanups, #ifdef cleanups in the runtime

19 years ago0.8.21.28:
Alexey Dejneka [Sat, 9 Apr 2005 06:37:02 +0000 (06:37 +0000)]
0.8.21.28:
        * Constant folding of undefined function now causes full
          warning in the cross-compiler as suggested by CSR.
        * Define cross-compiler versions of all modular functions.
        * Fix a constant reference in a type specifier.

19 years ago0.8.21.27: trivial micro-optimization of SXHASH: remove &OPTIONAL from
Nikodemus Siivola [Fri, 8 Apr 2005 20:29:38 +0000 (20:29 +0000)]
0.8.21.27: trivial micro-optimization of SXHASH: remove &OPTIONAL from
  (LABELS SXHASH-RECURSE).

19 years ago0.8.21.26: provide %SQRT &co as functions on x86 for constant folding
Nikodemus Siivola [Fri, 8 Apr 2005 14:22:54 +0000 (14:22 +0000)]
0.8.21.26: provide %SQRT &co as functions on x86 for constant folding

19 years ago0.8.21.25:
Christophe Rhodes [Fri, 8 Apr 2005 14:19:06 +0000 (14:19 +0000)]
0.8.21.25:
Fix for "Apparent memory leak in (eval '(lambda () ...))" (Kevin
Reid sbcl-devel 2004-02-26
... don't name the EVAL-TMP function.

19 years ago0.8.21.24: minor compiler output cleanup
Nikodemus Siivola [Fri, 8 Apr 2005 12:44:25 +0000 (12:44 +0000)]
0.8.21.24: minor compiler output cleanup
  * when summarizing a compilation unit print the final newline
     outside the logical block.

19 years ago0.8.21.23: rewritten SUB-GC & finalization
Nikodemus Siivola [Fri, 8 Apr 2005 12:30:13 +0000 (12:30 +0000)]
0.8.21.23: rewritten SUB-GC & finalization
  * last vestiges of before GC hooks have been removed.
  * after GC hooks are now left for user-code.
  * call UNSAFE-CLEAR-ROOTS before GC proper as the moral replacement
     of old before GC hooks for internal use only: on unithread SBCL
     scrub the stack and clear ctype-of cache, on threaded just scrub the
     stack.
  * finalizers and after GC hooks moved outside the GC proper, with
     interrupts enabled and all threads[1] running; it is now safe to
     allocate in them as re-entry to GC is possible.
  * put a lock on the global finalizers list, as per Gabor Mellis'
     patch. Gratuitiously change the name of the selfsame global variable
     to flush out anyone diddling with it.
  * tighten the finalizer spec with a note that they may run in any
     thread.
  * add a stress-test for finalizers.

 [1. Not actually tested on threaded SBCL.]

19 years ago0.8.21.22:
Christophe Rhodes [Thu, 7 Apr 2005 12:32:54 +0000 (12:32 +0000)]
0.8.21.22:
Maybe make two-dimensional array type testing faster.

19 years ago0.8.21.21: fix & share EXTERN-ALIEN-NAME logic (fixes bug #373)
Nikodemus Siivola [Thu, 7 Apr 2005 08:00:03 +0000 (08:00 +0000)]
0.8.21.21: fix & share EXTERN-ALIEN-NAME logic (fixes bug #373)
 * move e-a-n from SB-VM to SB-SYS, and from target/vm.lisp
    to foreign.lisp.
 * move all e-a-n calls to FIND-FOREIGN-SYMBOL-IN-TABLE and
    GET-DYNAMIC-FOREIGN-SYMBOL-ADDRESS.
 * reader conditionalize e-a-n behaviour on :ELF and :MACH-O; explicitly
    add the relevant feature for each OS in make-config.sh.
 * delete unused file ppc/print.lisp (duplicates ppc/show.lisp).
 * increment fasl-format number.

 note: affects all backends; tested on ppc/darwin, x86/freebsd, and
  sparc/sunos.

19 years ago0.8.21.20
Daniel Barlow [Wed, 6 Apr 2005 17:16:57 +0000 (17:16 +0000)]
0.8.21.20
Patch SLEEP to use nanosleep() and to restart the sleep if
interrupted e.g. by a signal, instead of returning early.  Thanks
to Gabor Melis (ref sbcl-help, "Oddity with make-thread and sleep")

19 years ago0.8.21.19:
Juho Snellman [Wed, 6 Apr 2005 01:47:35 +0000 (01:47 +0000)]
0.8.21.19:
* Merge more x86-64 disassembler improvements from Lutz Euler.
          (sbcl-devel "Re: Improving the x86-64 disassembler" on
           2005-04-05).
        * Bump compact-info-env-entries-bits to allow purify on images with
          large amounts of functions (sbcl-devel "purify failure when
          compact-info-env-entries-bits is too small" on 2005-03-26
          by Cyrus Harmon).

19 years ago0.8.21.18:
Christophe Rhodes [Tue, 5 Apr 2005 16:38:14 +0000 (16:38 +0000)]
0.8.21.18:
Patch from Thiemo Seufer / Peter van Eynde for MIPS assembly code
... maybe fixes stability problems.

19 years ago0.8.21.17:
Christophe Rhodes [Tue, 5 Apr 2005 11:03:19 +0000 (11:03 +0000)]
0.8.21.17:
Fix fixnum / sb!xc:fixnum xc bug (as in discussion with Bruno Haible
sbcl-devel 2005-03/2005-04)
... don't use the CL:FIXNUM type in immediate-constant-sc;
... write and use a test in before-xc.

19 years ago0.8.21.16:
Christophe Rhodes [Mon, 4 Apr 2005 09:49:43 +0000 (09:49 +0000)]
0.8.21.16:
Merge Teemu Kalvas' latest patch;
... add a terribly minimal test file for external-format issues

19 years ago0.8.21.15: minor rollback
Nikodemus Siivola [Sun, 3 Apr 2005 10:55:58 +0000 (10:55 +0000)]
0.8.21.15: minor rollback
  * don't put WITH-COMPILATION-UNIT in EVAL after all.

19 years ago0.8.21.14:
Christophe Rhodes [Sat, 2 Apr 2005 10:30:50 +0000 (10:30 +0000)]
0.8.21.14:
By popular request (hi Zach), make the banner inert.

19 years ago0.8.21.13:
Alexey Dejneka [Sat, 2 Apr 2005 06:32:29 +0000 (06:32 +0000)]
0.8.21.13:
        * The 1st of April is over, so it's time to be able to build
          SBCL again: remove call of EVAL in MAKE-SAETP.
        * Define cross-versions of some modular funs.

19 years ago0.8.21.12: compiler message fixes
Nikodemus Siivola [Fri, 1 Apr 2005 16:48:03 +0000 (16:48 +0000)]
0.8.21.12: compiler message fixes
 * print "caught FOO" messages and error summaries to *ERROR-OUTPUT*,
   not to *STANDARD-OUTPUT*.
 * wrap EVAL guts in WITH-COMPILATION-UNIT so that multiple subforms
   requiring compilation have their output condenced.
 * clean up compilation summary newline handling.

19 years ago0.8.21.11:
Nikodemus Siivola [Fri, 1 Apr 2005 12:57:28 +0000 (12:57 +0000)]
0.8.21.11:
  * print null lexenvs as #<NULL-LEXENV>, making for more compact
     backtraces. Non-null lexenvs still print as structures.
  * add TYPE-WARNING to cross-conditions for comfort, and try to
     embarrass the next one to diddle there into solving the larger
     issue.

19 years ago0.8.21.10:
Christophe Rhodes [Fri, 1 Apr 2005 10:52:09 +0000 (10:52 +0000)]
0.8.21.10:
Merge (second) patch from Teemu Kalvas to reorganize the
encoding error restarts.

19 years ago0.8.21.9:
Christophe Rhodes [Fri, 1 Apr 2005 07:49:58 +0000 (07:49 +0000)]
0.8.21.9:
Improved startup banner, reflecting the chemical substances used
by Carnegie and Mellon to eliminate the competition (and also
by students at the university they founded with their ill-gotten
gains).

19 years ago0.8.21.8:
Juho Snellman [Wed, 30 Mar 2005 15:50:07 +0000 (15:50 +0000)]
0.8.21.8:
Building a 64-bit target with a 32-bit host works again.
        * most-positive-fixnum -> sb!xc:most-positive-fixnum in
          !DEFINE-BYTE-BASHERS

19 years ago0.8.21.7:
Alexey Dejneka [Tue, 29 Mar 2005 11:57:31 +0000 (11:57 +0000)]
0.8.21.7:
        * Fix infinite looping of ALIEN-FUNCALL, compiled with (DEBUG
          3) as reported by Baughn on #lisp.
        * Replace BIT-BASH-COPY in CONCATENATE transformation for
          strings with UB8-BASH-COPY.

19 years ago0.8.21.6:
Juho Snellman [Tue, 29 Mar 2005 03:15:46 +0000 (03:15 +0000)]
0.8.21.6:
Fix some x86-64 issues:
        * DOUBLE-FLOAT-{HIGH,LOW}-BITS on doubles stored on the stack
          had a off-by-one error on x86-64. (Discovered using Paul Dietz'
          random type propagation tester).
        * Fix a thinko in the pointer detection code of MAKE-VALID-LISP-OBJ.
          This was causing creation of invalid lispobjs under some
          rare circumstances, followed by failing GC assertions. (Discovered
          using Paul Dietz' random type propagation tester).
        * The disassembly done by the compiler if *COMPILER-TRACE-OUTPUT*
          is set was erroring out on x86-64 RIP addressing. Add a
          workaround.
        * Add missing case to !DEFINE-BYTE-BASHERS for a bitsize of 64.

19 years ago0.8.21.5:
Nathan Froyd [Mon, 28 Mar 2005 18:54:50 +0000 (18:54 +0000)]
0.8.21.5:
Enable faster REPLACE on declared specialized arrays.

Overview of necessary machinery:
* New %VECTOR-RAW-BITS and %SET-VECTOR-RAW-BITS functions/VOPs
  which automatically take into account VECTOR-DATA-OFFSET
  (eliminates tedium associated with previous bit-bashing code
   and makes things slightly faster).  It's not clear if the
  old %RAW-BITS and %SET-RAW-BITS functions need to remain;
* Generalize the old bit-bashing code to generate bit-bashers
  for differently sized "bytes" (1-bit, 2-bit, 4-bit, etc.);
* Add REPLACE transforms for most specialized array types
  (those with elements not larger than the word size);
* Replace various incantations of COPY-FROM-SYSTEM-AREA,
  COPY-TO-SYSTEM-AREA, BIT-BASH-COPY, etc. with their new
  width-aware equivalents (this accounts for the bulk of the
  changed files, if not the changed lines);
* Add systematic tests for UB*-BASH-{FILL,COPY};
* Add generalized SUBSEQ and COPY-SEQ transforms while we're
  at it (FILL would be nice to have, but is a little bit
  trickier to do in the general case).

These changes also open up the possibility of removing %BYTE-BLT
  from the sources.  Benefits: decrease in the number of
  WITHOUT-GCING forms required, less calling out to C, more of
  the system in Lisp, etc.  %BYTE-BLT remains in this version,
  but may be removed if there is sufficient support for its
  removal.

19 years ago0.8.21.4:
Nathan Froyd [Mon, 28 Mar 2005 15:27:53 +0000 (15:27 +0000)]
0.8.21.4:
When determining the absolute pathname of an object file, make
  COMPILE-STEM more tolerant of object files that already exist.

Fix NEWS entry from last commit.  *sigh*

19 years ago0.8.21.2:
Nathan Froyd [Mon, 28 Mar 2005 15:19:18 +0000 (15:19 +0000)]
0.8.21.2:
Remove traces of the '--noprogrammer' option from the sources.

19 years ago0.8.21.2:
Christophe Rhodes [Sun, 27 Mar 2005 18:34:42 +0000 (18:34 +0000)]
0.8.21.2:
Merge mainly MISC fixes held over from pre-freeze

19 years ago0.8.21.1:
Alexey Dejneka [Sun, 27 Mar 2005 17:44:04 +0000 (17:44 +0000)]
0.8.21.1:
        * Fix inference of the upper bound of an iteration variable.
          (reported by Rajat Datta).
        * Fix MISC.549 and similar: in cast merging in IR1
          finalization set the node derived type directly, not through
          DERIVE-NODE-TYPE, which could try to optimize code.

19 years ago0.8.21:
William Harold Newman [Sun, 27 Mar 2005 13:55:59 +0000 (13:55 +0000)]
0.8.21:
release, tagged as sbcl_0_8_21

19 years ago0.8.20.31:
Juho Snellman [Tue, 22 Mar 2005 22:09:18 +0000 (22:09 +0000)]
0.8.20.31:
Has it been a month already? Bump +FASL-FILE-VERSION+. Reasons:
        * "0.8.20.6: Make FILE-STREAM and STRING-STREAM potential mixins
           in CLOS"
        * "0.8.20.21: Add immediate single-floats on x86-64."
        * Probably others...

        Restore a modified version of the "slightly odd-looking stuff"
        that was removed in 0.8.20.30. It's there because the arch name
        is "x86-64" but the config file suffix is "x86_64-linux".

19 years ago0.8.20.30:
Daniel Barlow [Tue, 22 Mar 2005 19:32:26 +0000 (19:32 +0000)]
0.8.20.30:
Slightly nicer behaviour on non-NPTL systems makes it possible
to use thread-enabled binaries in thread-unfriendly environments again
- but a warning is issued at startup and MAKE-THREAD signals an error

Remove some slightly odd-looking stuff in make-config.sh: once
again it is possible to "SBCL_ARCH=x86 sh make.sh" on an x86-64

19 years ago0.8.20.29:
Daniel Barlow [Tue, 22 Mar 2005 14:02:18 +0000 (14:02 +0000)]
0.8.20.29:
Merge SB-FUTEX and SB-THREAD: the latter now requires the
former.  SBCL threads now require Linux kernel 2.6, or an NPTL
backport to 2.4 such as the Red Hat one

Lock/unlock functions take long (not int) as arguments: this makes
a difference on 64 bit ports (or would do if we had threading support
on either of them)

19 years ago0.8.20.28 pretty backtraces with unavailable arguments & lambda-lists
Nikodemus Siivola [Sun, 20 Mar 2005 09:03:40 +0000 (09:03 +0000)]
0.8.20.28 pretty backtraces with unavailable arguments & lambda-lists
             * fix issue reported by Juho Snellman on sbcl-devel 2005-03-18,
                and some related problems.
             * minor combinatorial explosion in debug.impure.lisp; most
                tests still skipped on x86/linux :/

19 years ago0.8.20.27:
Juho Snellman [Thu, 17 Mar 2005 22:51:31 +0000 (22:51 +0000)]
0.8.20.27:
Fix x86-64 backend bugs found using Paul Dietz's random tester.
        * Sign-extension in constant LOGAND, + and TRUNCATE VOPs.
        * Sign-extension of literal (unsigned-byte 32) passed as
          arguments on the stack.

        Fix handling of :START1 and :START2 in the string comparison
        deftransforms on simple-base-strings (ansi-tests MISC.572/573/574).

        Minor cleanup: Use the already defined *cache-expand-threshold*
        instead of magic numbers in pcl/cache.lisp.

19 years ago0.8.20.26:
Christophe Rhodes [Wed, 16 Mar 2005 10:21:46 +0000 (10:21 +0000)]
0.8.20.26:
Fix MAKE-PACKAGE.ERROR.[34] (PFD ansi-tests, exposed by removal
of the TOPLEVEL restart)

19 years ago0.8.20.25:
Christophe Rhodes [Wed, 16 Mar 2005 10:11:10 +0000 (10:11 +0000)]
0.8.20.25:
Improve sb-simple-streams's dependency information (problem
noted by VJA sbcl-devel)

19 years ago0.8.20.24:
Christophe Rhodes [Wed, 16 Mar 2005 10:10:05 +0000 (10:10 +0000)]
0.8.20.24:
One more immediate-single-float fix
... update search_space().

19 years ago0.8.20.23:
Juho Snellman [Tue, 15 Mar 2005 18:21:29 +0000 (18:21 +0000)]
0.8.20.23:
Fix some GC problems introduced in the x86-64 immediate single-floats
        commit:
        * Make gencgc understand immediate single-floats too.
        * Fix typo in purify.

        Test changes:
        * Don't test floating-point overflow detection on x86-64, add
          a BUGS entry.
        * Change #-(x86 linux) to #-(and x86 linux) in debug.impure.lisp.

19 years ago0.8.20.22:
Andreas Fuchs [Tue, 15 Mar 2005 08:59:28 +0000 (08:59 +0000)]
0.8.20.22:
        Fix MEMORY_FAULT_ERROR invocations in bsd-os.c.
        SBCL now builds on FreeBSD again.

19 years ago0.8.20.21:
Juho Snellman [Mon, 14 Mar 2005 17:39:37 +0000 (17:39 +0000)]
0.8.20.21:
Add immediate single-floats on x86-64. The implementation is
        conditionalized on (= SB!VM:N-WORD-BITS 64), so the following
        bits need to be done for the 64-bit Alpha port too:

        * Add some new type-test generators (%TEST-FIXNUM-AND-IMMEDIATE,
          %TEST-FIXNUM-IMMEDIATE-AND-HEADERS, %TEST-IMMEDIATE-AND-HEADERS).
        * Modify single-float move-vops and SINGLE-FLOAT-BITS.

19 years ago0.8.20.20:
Christophe Rhodes [Mon, 14 Mar 2005 09:54:43 +0000 (09:54 +0000)]
0.8.20.20:
Fix handling of SIG_MEMORY_FAULT in the (conceptual)
interrupt_handle_now() case -- arrange_return_to_lisp_function()
to MEMORY_FAULT_ERROR instead, for x86(-64).  (I hope I
haven't broken anything on other architectures... please check!)
... also log problem with reporting the error in BUGS

19 years ago0.8.20.19:
Christophe Rhodes [Sun, 13 Mar 2005 17:44:34 +0000 (17:44 +0000)]
0.8.20.19:
Merge sb-introspect improvements from Luke Gorrie (sbcl-devel
"Re: definition-source-created in sb-introspect.lisp"
2005-03-13

19 years ago0.8.20.18: x86 --> (and x86 linux)
Nikodemus Siivola [Fri, 11 Mar 2005 18:54:34 +0000 (18:54 +0000)]
0.8.20.18: x86 --> (and x86 linux)

           "Mature debugger function looking for love; WLTM a serious hacker
           to share my kinks with. ``It's what's inside that counts.'' Rpl 2
           SBCL CVS, X86-CALL-CONTEXT"

19 years ago0.8.20.17:
William Harold Newman [Fri, 11 Mar 2005 17:09:49 +0000 (17:09 +0000)]
0.8.20.17:
suppressed a VERIFY-BACKTRACE test, because it seems to be
broken independent of the haiblefixes I'm merging
merged various fixes from Bruno Haible sbcl-devel 2005-03-10.
(Note that some can't be properly exercised w/out a
Mac or CLISP, but since they were self-evidently broken
before (e.g., #+DARWIN or SUBTYPEP where only #!+DARWIN
                or SB!XC:SUBTYPEP makes sense), I merged them on the
theory that it can't be making things fundamentally
worse.:-)
(+ unrelated .cvsignore tweaks to reduce general CVS nagging)

19 years ago0.8.20.16:
Brian Downing [Fri, 11 Mar 2005 07:00:51 +0000 (07:00 +0000)]
0.8.20.16:
Fixed cross-compilation problems to and from Darwin/PPC.

* #+darwin changed to #!+darwin before linkage-table constants
  in src/compiler/ppc/parms.lisp

19 years ago0.8.20.15: remove TOPLEVEL restart
Nikodemus Siivola [Thu, 10 Mar 2005 23:26:06 +0000 (23:26 +0000)]
0.8.20.15: remove TOPLEVEL restart
            * add TOPLEVEL/TOP debugger command for convenience, making
               it return to the top level.
            * use the gained screen real-estate to insert an empty
               line between restarts and the first frame.

19 years ago0.8.20.14:
Juho Snellman [Thu, 10 Mar 2005 06:22:44 +0000 (06:22 +0000)]
0.8.20.14:
A rewrite of the x86-64 disassembler infrastructure for better
        handling of operand sizes and register widths (patch by Lutz Euler,
        sbcl-devel/"Improving the x86-64 disassembler" on 2005-03-06).

19 years ago0.8.20.13: document current initialization file semantics
Nikodemus Siivola [Thu, 10 Mar 2005 06:01:12 +0000 (06:01 +0000)]
0.8.20.13: document current initialization file semantics

19 years ago0.8.20.12: policy control, the uncontroversial parts
Nikodemus Siivola [Wed, 9 Mar 2005 18:49:40 +0000 (18:49 +0000)]
0.8.20.12: policy control, the uncontroversial parts
            * get rid of MAKE-NULL-INTERACTIVE-LEXENV
            * use READ & EVAL to process initialization files
            * more restarts available during initialization file and
               --eval option processing (CONTINUE is "skip to next
               form / option, ABORT is "skip this initialization file / all
               --eval options".)

19 years ago0.8.20.11:
Alexey Dejneka [Wed, 9 Mar 2005 04:23:08 +0000 (04:23 +0000)]
0.8.20.11:
        * Fix bug, reported by David Tolpin on c.l.l: LOAD should bind
          *LOAD-PATHNAME* to the merged pathname.

19 years ago0.8.20.10:
Christophe Rhodes [Tue, 8 Mar 2005 18:41:28 +0000 (18:41 +0000)]
0.8.20.10:
Fix ctor/package deletion problems (Tim Daly sbcl-help 2005-03)
... MORE GENERALIZED FUNCTION NAMES

19 years ago0.8.20.9
Rudi Schlatte [Mon, 7 Mar 2005 17:56:10 +0000 (17:56 +0000)]
0.8.20.9
Fix sb-simple-streams; all tests pass again:

  * Test that clear-input can be called without errors but don't make
    assumptions about the stream state afterwards

  * Fix some LISTEN failures (simple-stream encapsulated in a two-way
    stream, incorrect assumptions about return value of
    stream-misc-dispatch :listen)

19 years ago0.8.20.8:
Alexey Dejneka [Mon, 7 Mar 2005 06:53:14 +0000 (06:53 +0000)]
0.8.20.8:
        * Disable backtrace checking on (and x86 linux).
        * Describe bugs MISC.555 and MISC.563.
        * Define out-of-line %ATAN2 on x86 (fix MISC.564).

19 years ago0.8.20.7:
Alexey Dejneka [Sun, 6 Mar 2005 10:33:28 +0000 (10:33 +0000)]
0.8.20.7:
        While we are discussing SB-WALKER, bug 276 has risen again:
        * fix a case with M-V-SETQ;
        * record a problem with global variables.

19 years ago0.8.20.6:
Christophe Rhodes [Thu, 3 Mar 2005 17:15:17 +0000 (17:15 +0000)]
0.8.20.6:
Make FILE-STREAM and STRING-STREAM potential mixins in CLOS
(... and also, hackily, into structures.)
... adjust FD-STREAM, and the various ANSI string streams.
... sb-simple-streams can now make file-simple-stream and
string-simple-stream subclasses (and hence subtypep)
the relevant mixin.

Caveat downloader I: This merge includes David Lichteblau's
sb-simple-streams test suite extension, from which seven tests
fail.

Caveat downloader II: debug.impure.lisp is failing for me on
x86/Linux.  I'm pretty sure this is not my fault -- I blame the
debugger restructuring -- but it could be anyway.

Caveat user: Bad Things happen if you try to mix both string-stream
and file-stream into the same subclass.  Don't Do It.

19 years ago0.8.20.5: Candidate for minor bug fix of the year:
Brian Mastenbrook [Thu, 3 Mar 2005 00:10:08 +0000 (00:10 +0000)]
0.8.20.5: Candidate for minor bug fix of the year:
          * (funcall (compile nil '(lambda () (typep t '(member t nil))))) => T, not (T)

19 years ago0.8.20.4: unbreak debugger even more
Nikodemus Siivola [Wed, 2 Mar 2005 09:54:43 +0000 (09:54 +0000)]
0.8.20.4: unbreak debugger even more
           * use *DEBUG-IO* more consistently.

19 years ago0.8.20.3: unbreak debugger
Nikodemus Siivola [Wed, 2 Mar 2005 06:45:47 +0000 (06:45 +0000)]
0.8.20.3: unbreak debugger
           * don't use PREPROCESS-FOR-EVAL for EVAL in the debugger since
              the documentation was just updated to that effect, and it
              takes two arguments anyways. Restoring this as part of the
              debugger command loop might be nice, but potentially confusing.

19 years ago0.8.20.2:
Christophe Rhodes [Tue, 1 Mar 2005 10:54:36 +0000 (10:54 +0000)]
0.8.20.2:
Fix the compiler note emission from COUNT and EQUAL on bit-vectors.
(reported by Lutz Euler sbcl-devel 2005-02-16)
... rewrite (1- (ash 1 <integer 1 n-word-bits>)) as
(ash #xff...ff (- n-word-bits <integer 1 n-word-bits>))

19 years ago0.8.20.1: fun-name fun, debugger debugged
Nikodemus Siivola [Tue, 1 Mar 2005 10:21:27 +0000 (10:21 +0000)]
0.8.20.1: fun-name fun, debugger debugged
           * fix bug 32: print closures as #<CLOSURE name-goes-here>.
           * fix bug 33: better inspection of closures
           * remove bug 60: LIST-LOCATIONS has been deleted at some
              point in history, no point in keeping a bug about it.
           * move to using structured function names: (XEP FOO), etc
              instead of "XEP for FOO". Ditto for component names.
           * unless SB-DEBUG:*SHOW-ENTRY-POINT-DETAILS* is true
              display various entry points in backtraces as if they were
              "normal functions", and adjust the argument list accordingly.
           * fix for debugger I/O style issues: use *DEBUG-IO*, not
              *STANDARD-OUTPUT*.
           * use INTERACTIVE-EVAL in the debugger instead of reimplementing
              it.
           * update debugger documentation.

19 years ago0.8.20:
William Harold Newman [Tue, 1 Mar 2005 02:32:08 +0000 (02:32 +0000)]
0.8.20:
release, tagged as sbcl_0_8_20

19 years ago0.8.19.39:
Christophe Rhodes [Wed, 23 Feb 2005 12:43:21 +0000 (12:43 +0000)]
0.8.19.39:
Whoops.  NEWS asserts that LOAD copes with :external-format
arguments.  Better make sure that the compiler is aware of that
too.

19 years ago0.8.19.38:
Alexey Dejneka [Wed, 23 Feb 2005 08:31:18 +0000 (08:31 +0000)]
0.8.19.38:
        * Fix MISC.535: CONSTANT-LVAR-P looks through CASTs.
        * Workaround lack of recursion recognition in XC for
          PRINCIPAL-LVAR-USE.

19 years ago0.8.19.37:
Juho Snellman [Tue, 22 Feb 2005 22:14:04 +0000 (22:14 +0000)]
0.8.19.37:
        Increment +fasl-file-version+. It just wouldn't feel like a real
        SBCL release without invalidating the fasls.

        * Some FFI-related fasls became incompatible at about 0.8.19.26.
          Probable cause: "lazy alien resolution improvements".

19 years ago0.8.19.36:
Christophe Rhodes [Tue, 22 Feb 2005 10:34:35 +0000 (10:34 +0000)]
0.8.19.36:
make FILE-POSITION-FOR-ERROR-OR-NIL understand two-arg FILE-POSITION

19 years ago0.8.19.35:
Alexey Dejneka [Mon, 21 Feb 2005 19:17:39 +0000 (19:17 +0000)]
0.8.19.35:
        * Fix bug, found by Paul F. Dietz in
          (CTYPE-OF (COMPLEX <integer> <ratio>)).

19 years ago0.8.19.34:
Alexey Dejneka [Sun, 20 Feb 2005 18:53:13 +0000 (18:53 +0000)]
0.8.19.34:
        * Fix MISC.527: DEFTRANSFORM for BIT-AND and similar for
          vectors use (ARRAY-DIMENSION v 0) instead if LENGTH to get
          the full vector size.

19 years ago0.8.19.33: fix inspection of specialized arrays
Nikodemus Siivola [Sun, 20 Feb 2005 12:04:44 +0000 (12:04 +0000)]
0.8.19.33: fix inspection of specialized arrays

           Patch by Simon Alexander on sbcl-devel 2005-02-19.

           Note to self: it seems that we don't currently have
           _any_ tests for the inspector. Make it not so, someday
           soon for preference.

19 years ago0.8.19.32:
Christophe Rhodes [Fri, 18 Feb 2005 08:22:23 +0000 (08:22 +0000)]
0.8.19.32:
In response to a question on #lisp IRC...
... make the style-warning for #S(FOO #\A 1) include a reference
to the relevant section in CLtS.

19 years ago0.8.19.31:
Juho Snellman [Thu, 17 Feb 2005 21:59:01 +0000 (21:59 +0000)]
0.8.19.31:
x86-64 floating point improvements:
        * Optimization: fewer moves on floating point add/sub/mul/div.
          Only use a temporary xmm register if absolutely needed.
* Optimization: When restoring xmm15 to zero after a c-call,
          use xorpd instead of a temporary register and movq.
        * Replace broken x87 FLOATING-POINT-MODES and SET-FLOATING-POINT-MODES
          with SSE code that uses the mxcsr control register.
        * Fix movd / movq from a xmm register to a gp register.
        * Add new instructions: ldmxcsr, stmxcsr

19 years ago0.8.19.30: less COMPILE-FILE verbosity
Nikodemus Siivola [Thu, 17 Feb 2005 14:30:38 +0000 (14:30 +0000)]
0.8.19.30: less COMPILE-FILE verbosity

           First stab at fixing bug #7. To get output approximately as
           verbose as the old behaviour use :TOP-LEVEL-FORMS as the
           value of the :PRINT option to COMPILE-FILE.

           Note: Giving users control over the way things are printed
           via *COMPILER-PRINT-VARIABLE-ALIST* is OTOH a good thing,
           but it also seems to be used for ratheer diverse things,
           and people could reasonably want to customize them
           separately. Gah.

           Also list x86/FreeBSD4 as "expected to pass tests" in
           make.sh output, as that seems to be the case.

19 years ago0.8.19.29:
Christophe Rhodes [Thu, 17 Feb 2005 11:26:07 +0000 (11:26 +0000)]
0.8.19.29:
Add (untested, so sue me) getenv and putenv to sb-posix

19 years ago0.8.19.28: fix loading of multiply forward-refrenced layouts
Nikodemus Siivola [Wed, 16 Feb 2005 06:02:04 +0000 (06:02 +0000)]
0.8.19.28: fix loading of multiply forward-refrenced layouts

           Bug orginally reported and fix provided by Cheuksan Wang,
           basis for test-case provided by Jason Dagit.

19 years ago0.8.19.26: fix bignum printing:
Nikodemus Siivola [Sun, 13 Feb 2005 14:33:51 +0000 (14:33 +0000)]
0.8.19.26: fix bignum printing:
            * algorithm by Harald Hanche-Olsen.
            * good: less memory-intensive, faster for smallish
               bignums.
            * bad: more CPU-intensive for large eg. 2^1000000)
               bignums, around order of 2^10000000 becoming essentially
               unprintable.

           lazy alien resolution improvement:
            * resolve undefined functions to the address of
               undefined_alien_function instead of the guard
               page to work around the bus error on ppc/darwin.
            * also buys us discrimination between undefined alien
               variables and functions (on all platforms).

           note ppc/darwin problems revealed by tests/ in BUGS, and disable
           those tests:
            * floating-point overflow not signalled
            * type-error from sb-profile:report
            * bit-and with huge bit-vectors fails with a lost
               gc-invariant (maybe a general cheney-gc problem?)

            => All tests now pass on ppc/darwin, note this in the message
               at the end of make.sh, marking x86/Linux and ppc/Darwin
               as platforms where all tests are supposed to pass.

19 years agomessage
Nikodemus Siivola [Sun, 13 Feb 2005 14:27:01 +0000 (14:27 +0000)]
message

19 years ago0.8.19.25:
William Harold Newman [Fri, 11 Feb 2005 21:49:36 +0000 (21:49 +0000)]
0.8.19.25:
Protect condition printers from errors which might be
signalled by FILE-POSITION.

19 years ago0.8.19.24:
Juho Snellman [Fri, 11 Feb 2005 12:09:44 +0000 (12:09 +0000)]
0.8.19.24:
        Fix ansi-test failures related to pretty-printing backquoted forms
        when *PRINT-CIRCLE* is true. Print the ",@" and ",." tokens with
        WRITE-STRING instead of PRINC to prevent circularity detection
        from applying to them.

19 years ago0.8.19.23:
Juho Snellman [Fri, 11 Feb 2005 07:32:33 +0000 (07:32 +0000)]
0.8.19.23:
        Optimize float/fixnum comparisons, primarily for the benefit
        of McCLIM. If the fixnum's value is in a range where it's
        guaranteed to have an exact float representation, coerce it to
        a float and do a float comparison. Otherwise fall back to the
        old behaviour of rationalizing the float.