sbcl.git
19 years ago0.9.0.37:
Juho Snellman [Wed, 18 May 2005 02:22:48 +0000 (02:22 +0000)]
0.9.0.37:
        * Merge sbcl-devel "Unneeded REX prefixes on x86-64"
          (Lutz Euler, 2005-05-17)
        * Merge sbcl-devel " x86-64 fp exceptions" (James Knight,
          2005-05-17)
        * Add "--userinit /dev/null --sysinit /dev/null" to the
          default SBCL_XC_HOST.
        * Clean up some stale x86 code (mostly floating point related)
          in the x86-64 port.

19 years agoFix bug 242 for fd-streams
Rudi Schlatte [Mon, 16 May 2005 19:40:08 +0000 (19:40 +0000)]
Fix bug 242 for fd-streams
  ... fd-streams have a method that writes n octets; use it.

19 years ago0.9.0.35
Rudi Schlatte [Mon, 16 May 2005 12:19:33 +0000 (12:19 +0000)]
0.9.0.35
Slight depessimization of WRITE-SEQUENCE of byte arrays
  ... Don't go through full stream dispatch machinery for every byte

19 years ago0.9.0.34
Rudi Schlatte [Sun, 15 May 2005 20:09:56 +0000 (20:09 +0000)]
0.9.0.34
Eliminate unnecessary seeks on socket streams
  ... Introduce dual-channel-p flag in fd-streams to discriminate
      between files and socket/pipe-streams

19 years ago0.9.0.33:
Christophe Rhodes [Sun, 15 May 2005 15:03:07 +0000 (15:03 +0000)]
0.9.0.33:
Make SB-MD5 enforce its requirements.
... also keep lambda lists around, for manual autogroveling
purposes

19 years ago0.9.0.32: "ASCII by any other name"
Nikodemus Siivola [Sun, 15 May 2005 12:49:16 +0000 (12:49 +0000)]
0.9.0.32: "ASCII by any other name"
 * Solaris nl_langinfo calls ASCII "646", so add the aliases for
    :ISO-646, :ISO-646-US, and :|646|; restores Solaris buildabilty.

...now there's still failing tests though: backtrace issues and the
compiler is losing type information...

19 years ago0.9.0.31: sparc build fixes
Nikodemus Siivola [Sat, 14 May 2005 14:24:29 +0000 (14:24 +0000)]
0.9.0.31: sparc build fixes
 * disembodied WITH-FIXED-ALLOCATION.
 * globals.h patch from Thiemo Seufer.

... not that this is enough to restore Sparc buildability yet,
but at least with this we can reach make-target-2.sh...

19 years ago0.9.0.30: towards callbacks: static-vectors
Nikodemus Siivola [Fri, 13 May 2005 18:30:44 +0000 (18:30 +0000)]
0.9.0.30: towards callbacks: static-vectors
 * SB-INT:MAKE-STATIC-VECTOR allows direct allocation of specialized
    vectors to static space. This is eventually destined to become
    SB-EXT:MAKE-STATIC-ARRAY, but needs more frills before that --
    current setup is enough to support callbacks (and a bit more then
    that).
 * unrelated defrobnification, s/&rest/&body/ in a few places, and
    commentary on cunning punning.

19 years ago0.9.0.29:
Kevin Rosenberg [Thu, 12 May 2005 21:47:12 +0000 (21:47 +0000)]
0.9.0.29:
* contrib/sb-aclrepl/repl.lisp: Use new toplevel catch rather than
attempt to use the removed toplevel restart handler.

19 years ago0.9.0.28:
Christophe Rhodes [Thu, 12 May 2005 14:33:13 +0000 (14:33 +0000)]
0.9.0.28:
Fix for "fun with frameworks" SIGBUS bug.
... arg.  (argv[] specifically)

19 years ago0.9.0.27: fix bug 281, plus a tiny PCL cleanup
Nikodemus Siivola [Wed, 11 May 2005 07:49:18 +0000 (07:49 +0000)]
0.9.0.27: fix bug 281, plus a tiny PCL cleanup
 * COMPUTE-EFFECTIVE-METHOD-COMBINATION for SHORT-METHOD-COMBINATION should
    not signal an error for a bogus qualifier, but merely return a form that
    takes care of the signalling later.
 * EWTF: ESETF cannot be an optimization anymore, if it ever was.

19 years ago0.9.0.26:
Christophe Rhodes [Sun, 8 May 2005 15:55:06 +0000 (15:55 +0000)]
0.9.0.26:
More build fixes
... for our non-8859-1 friends, explicitly request the C locale
while building.
... running the tests (and indeed starting up the new sbcl)
in unknown locales will fail instantly, but that's probably
less annoying than having the build fail at cold-init time.
... probably stdin/out/err should fall back to ascii external format
if all else fails

19 years ago0.9.0.25:
Christophe Rhodes [Sat, 7 May 2005 16:12:06 +0000 (16:12 +0000)]
0.9.0.25:
Build fixes
... only complain about unknown external formats on character
streams;
... with-fixed-allocation bodies on x86 (and probably x86-64)

19 years ago0.9.0.24
Rudi Schlatte [Sat, 7 May 2005 10:32:34 +0000 (10:32 +0000)]
0.9.0.24
Don't silently assume LATIN-1 for unknown / misspelled
:external-format argument

19 years ago0.9.0.23:
Alexey Dejneka [Sat, 7 May 2005 06:04:36 +0000 (06:04 +0000)]
0.9.0.23:
        * Fix compiler failure reported by Alan Shields:
          MAYBE-INFER-ITERATION-VAR-TYPE failed to deal with types
          (REAL * (x)).

19 years ago0.9.0.22: more fixed allocation
Nikodemus Siivola [Fri, 6 May 2005 18:58:34 +0000 (18:58 +0000)]
0.9.0.22: more fixed allocation
 * fix remaining WITH-FIXED-ALLOCATIONS with empty bodies. NB: there
    seems to be some doubt whether this is actually the right thing to
    do, as CMUCL has at least in sparc/float.lisp in MOVE-FOO-FLOAT a
    commit message by William Lott indicating that this was
    intentional "to avoid handling a trap within P-A". Which trap that
    would be is unclear, but hopefully we will eventually rediscover
    the cases where this is intentional.
 * make WITH-FIXED-ALLOCATION signal a BUG if body is empty to catch
    this in the future.
 * sprinkle WITH-FIXED-ALLOCATION with FAIRY-D^WONCE-ONLY on platforms
    that didn't have it yet.

19 years ago0.9.0.21:
Rudi Schlatte [Fri, 6 May 2005 12:20:45 +0000 (12:20 +0000)]
0.9.0.21:
There were two functions to refill the buffer of an fd-stream from its
fd.  Zap the less complicated-looking one.
  * Rename frob-input to refill-buffer/fd
  * Make comment and code agree about its return value
  * Remove refill-fd-stream-buffer

19 years ago0.9.0.20:
Nathan Froyd [Fri, 6 May 2005 00:11:02 +0000 (00:11 +0000)]
0.9.0.20:
Fix suspicious-looking uses of WITH-FIXED-ALLOCATION in the PPC,
  SPARC and HPPA backends.

19 years ago0.9.0.19:
Christophe Rhodes [Thu, 5 May 2005 10:33:31 +0000 (10:33 +0000)]
0.9.0.19:
Fix bug discovered by CSR on comp.lang.lisp in message
<sqacnh7s0q.fsf@cam.ac.uk>
... treat :overwrite like :append

19 years ago0.9.0.18:
Christophe Rhodes [Wed, 4 May 2005 10:35:49 +0000 (10:35 +0000)]
0.9.0.18:
Basically s/assert/aver/ (Thiemo Seufer)

19 years ago0.9.0.17: minor tweaks
Nikodemus Siivola [Wed, 4 May 2005 07:31:37 +0000 (07:31 +0000)]
0.9.0.17: minor tweaks
 * install.sh checks that src/runtime/sbcl and output/sbcl.core exist,
    and abort if not.
 * distable step-instrumentation if COMPILATION-SPEED >= DEBUG.

19 years ago0.9.0.16:
Juho Snellman [Mon, 2 May 2005 17:11:11 +0000 (17:11 +0000)]
0.9.0.16:
* "A fix for a FIXME in generic subtraction on x86-64/x86",
          Lutz Euler, sbcl-devel/2005-05-01
        * MAKE-VALID-LISP-OBJ now also works on immediate single floats.
        * The x86-65 UNSIGNED-BYTE-64-P and CHECK-UNSIGNED-BYTE-64 VOPs can
          actually be compiled.

19 years ago0.9.0.15:
Christophe Rhodes [Mon, 2 May 2005 16:32:19 +0000 (16:32 +0000)]
0.9.0.15:
STREAM-MUST-BE-ASSOCIATED-WITH-FILE generates a type-error
with a DATUM.  (PFD ansi-tests)

19 years ago0.9.0.14:
Christophe Rhodes [Mon, 2 May 2005 14:54:32 +0000 (14:54 +0000)]
0.9.0.14:
Fix for WARN's type-error (among others: ENFORCE-TYPE / PFD
ansi-tests)
... the initarg is :DATUM, not :VALUE.

19 years ago0.9.0.13:
Christophe Rhodes [Sun, 1 May 2005 09:12:53 +0000 (09:12 +0000)]
0.9.0.13:
Miscellaneous small fixes
... manual patches, from Adam Warner and Peter Barabas
... %reader-error from Raymond Toy
... external-format tests from Teemu Kalvas

19 years ago0.9.0.12:
Alexey Dejneka [Sun, 1 May 2005 06:33:57 +0000 (06:33 +0000)]
0.9.0.12:
        * On X86 some -MOD32 VOPs now work with (SIGNED-BYTE 32)
          arguments (eliminates full call in the example provided by
          James Y Knight on sbcl-devel 2005-04-29).

19 years ago0.9.0.11:
Christophe Rhodes [Sat, 30 Apr 2005 19:43:56 +0000 (19:43 +0000)]
0.9.0.11:
Implement SB-POSIX:MKSTEMP (from Yannick Gingras sbcl-devel
2004-01-03 *blush*)

19 years ago0.9.0.10:
Christophe Rhodes [Sat, 30 Apr 2005 19:14:13 +0000 (19:14 +0000)]
0.9.0.10:
More MIPS/Thiemo patchery
... blast away icache after purify()
Message-ID: <20050422233214.GN10767@hattusa.textio>

19 years ago0.9.0.9:
Christophe Rhodes [Sat, 30 Apr 2005 18:20:57 +0000 (18:20 +0000)]
0.9.0.9:
More ThiemoSeuferPatches
... move search_space out of a .h file and into the common .c
file
Message-ID: <20050422220942.GH10767@hattusa.textio>

(this version passes a respectable number of PFD ansi-tests
on the x86.  It doesn't run them to completion, mind you, but
that I think is because of the test framework: MISC.587 at present
signals a control-stack-exhausted error on the x86, which of course
is not an ERROR but is a SERIOUS-CONDITION)

19 years ago0.9.0.8:
Christophe Rhodes [Sat, 30 Apr 2005 17:24:19 +0000 (17:24 +0000)]
0.9.0.8:
MIPS cleanup-related patches, from Thiemo Seufer
... prefer LISP_FEATURE_FOO preprocessor things
Message-ID: <20050422212841.GD10767@hattusa.textio>
... C style cleanups
Message-ID: <20050422214218.GF10767@hattusa.textio>
... more strenuous os_flush_icache.  "Should make no difference
in theory, but seems to in practice"
Message-ID: <20050422220354.GG10767@hattusa.textio>
... prefer type \n name() C function name style;
conditionally compile the alpha stuff in segv handler;
remove (unused) sigcont handler
Message-ID: <20050422222628.GI10767@hattusa.textio>

19 years ago0.9.0.7:
Christophe Rhodes [Sat, 30 Apr 2005 09:40:41 +0000 (09:40 +0000)]
0.9.0.7:
Begin MIPS megamerge from Thiemo Suifer ("More MIPS-related patches"
sbcl-devel 2005-04-23)

This patch merges those pieces which only touch MIPS code, and
as such I can't really test in a non-trivial way.
... don't use nl4 (pa-flag) in assembly routines
Message-ID: <20050422211550.GB10767@hattusa.textio>
... fix my thinko in the fixnum/sb-xc:fixnum backend immediate-sc
routine
Message-ID: <20050422212056.GC10767@hattusa.textio>
... use linux-nm.  (Other backends maybe should do the same)
Message-ID: <20050422213247.GE10767@hattusa.textio>
... lotso mips runtime cleanups
Message-ID: <20050422224553.GJ10767@hattusa.textio>
... an untested mips spinlock implementation
Message-ID: <20050422224830.GK10767@hattusa.textio>
... mips-assem.S fixes
Message-ID: <20050422232020.GL10767@hattusa.textio>
... more runtime fixes
Message-ID: <20050422233014.GM10767@hattusa.textio>
... load delay fixes for ldso-stubs
Message-ID: <20050422233501.GO10767@hattusa.textio>

19 years ago0.9.0.6:
Christophe Rhodes [Fri, 29 Apr 2005 14:37:35 +0000 (14:37 +0000)]
0.9.0.6:
MORE CASE CONSISTENCY

Make the system (with the x86-64 backend) buildable under
(readtable-case *readtable*) => :invert.

This may seem like a bit of an eccentric thing to do.  The plan,
however, is to in future define this as the build mode for SBCL,
enforcing it in the build scripts, so that userinits are
prevented from interfering in this respect, and also so that
case-consistency throughout the system is enforced (to reduce
potential reader confusion further down the line).  However,
since there are 100000 MIPS-related patches waiting to be
merged, it would be a bad time to enforce this (and break
all non-x86-64 backends).

19 years ago0.9.0.5:
Christophe Rhodes [Fri, 29 Apr 2005 12:10:04 +0000 (12:10 +0000)]
0.9.0.5:
Fix 32->64 build

19 years agonote the reader threadsafe bugs being discussed on cll at the moment
Christophe Rhodes [Fri, 29 Apr 2005 10:47:42 +0000 (10:47 +0000)]
note the reader threadsafe bugs being discussed on cll at the moment

19 years ago0.9.0.3:
Juho Snellman [Thu, 28 Apr 2005 22:20:40 +0000 (22:20 +0000)]
0.9.0.3:
Fix a few leakages from the host environment that only mattered
        when the host compiler had a larger fixnum size than the target.
        Building a 32-bit SBCL with a 64-bit SBCL as host should now work.

        * COMPACT-INFO-LOOKUP FIXME fixed by LOGANDing the return-value
          of GLOBALDB-SXHASHOID with SB!XC:MOST-POSITIVE-FIXNUM
        * Some !constants (LAYOUT-CLOS-HASH-MAX, CALL-ARGUMENTS-LIMIT,
          etc) were derived from MOST-POSITIVE-FIXNUM. Use
          SB!XC:MOST-POSITIVE-FIXNUM instead.

19 years ago0.9.0.2:
Christophe Rhodes [Thu, 28 Apr 2005 19:46:04 +0000 (19:46 +0000)]
0.9.0.2:
Note another threading special bug

19 years ago0.9.0.1:
William Harold Newman [Mon, 25 Apr 2005 14:47:13 +0000 (14:47 +0000)]
0.9.0.1:
logged a bug
minor comment tweaks

19 years ago0.9.0:
William Harold Newman [Sun, 24 Apr 2005 20:28:56 +0000 (20:28 +0000)]
0.9.0:
release, tagged as sbcl_0_9_0

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.