Nikodemus Siivola [Sun, 29 May 2005 10:37:20 +0000 (10:37 +0000)]
0.9.1.4: ENSURE-CLASS-USING-CLASS patch by Gerd Moellman, from cmucl-imp
* accept a class as :METACLASS as per AMOP.
Rudi Schlatte [Sun, 29 May 2005 10:27:38 +0000 (10:27 +0000)]
0.9.1.3
Small stream cleanups:
- Use same names in generalized-peeking-mechanism as cmucl
- set-fd-stream-routines can now in theory be used to change stream
element-type and external-format (but this clashes with
fast-read-char/-byte, since these work off another layer of buffers)
Christophe Rhodes [Sat, 28 May 2005 09:00:34 +0000 (09:00 +0000)]
0.9.1.2:
Merge a couple of cleanup fixes that I've had tagged for months
if not years.
Juho Snellman [Thu, 26 May 2005 22:53:59 +0000 (22:53 +0000)]
0.9.1.1:
* Invalid dotted lists no longer raise a read error when
*READ-SUPPRESS* is T
* Use a more tasteful :EXPECTED-TYPE for type errors related to
function names
William Harold Newman [Thu, 26 May 2005 19:11:40 +0000 (19:11 +0000)]
0.9.1:
release, tagged as sbcl_0_9_1
Juho Snellman [Sun, 22 May 2005 00:07:45 +0000 (00:07 +0000)]
0.9.0.41:
Increment +FASL-FILE-VERSION+.
Rudi Schlatte [Fri, 20 May 2005 16:43:21 +0000 (16:43 +0000)]
0.9.0.40
Fix peek-char bug reported by Fredrik Sandstrom (sbcl-devel
2005-05-17, "Bug in peek-char")
Christophe Rhodes [Fri, 20 May 2005 09:45:14 +0000 (09:45 +0000)]
0.9.0.39:
Merge amended "64bit FFI for mips/mipsel" patch (Thiemo Seufer
sbcl-devel 2005-05-09)
... including 64-bit return value in call_into_lisp. (Not
currently used)
... other minor MIPS cleanups and bugfixes too as described
in the mail message.
Juho Snellman [Thu, 19 May 2005 02:50:38 +0000 (02:50 +0000)]
0.9.0.38:
Fix a few ansi-test bugs:
* The type-errors signalled for invalid function names now have
a correct (if ugly) expected type.
* Functions taking type names as arguments correctly signal
type-errors (instead of package-lock errors, arg-count-errors,
etc) for some pathological non-function names (e.g (SETF),
(SETF . BAR)).
* (SETF (DOCUMENTATION ... 'STRUCTURE)) no longer signals an error
for structures defined with a :TYPE.
* Documentation strings specified in the DEFSTRUCT form for
typed structures are no longer immediately discarded (not
strictly a bug, just a quality of implementation issue...)
* FILE-STRING-LENGTH and STREAM-EXTERNAL-FORMAT now work on
non-fd-streams too.
* FILE-LENGTH now also works on broadcast streams. The spec
has slightly conflicting opinions on this issue; FILE-LENGTH
description says that stream must be associated with stream
or an error is signalled. BROADCAST-STREAM description
explicitly describes how FILE-LENGTH must be implemented.
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.
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.
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
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
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
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...
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...
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.
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.
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)
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.
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
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)
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
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)).
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.
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
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.
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
Christophe Rhodes [Wed, 4 May 2005 10:35:49 +0000 (10:35 +0000)]
0.9.0.18:
Basically s/assert/aver/ (Thiemo Seufer)
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.
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.
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)
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.
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
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).
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*)
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>
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)
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>
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>
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).
Christophe Rhodes [Fri, 29 Apr 2005 12:10:04 +0000 (12:10 +0000)]
0.9.0.5:
Fix 32->64 build
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
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.
Christophe Rhodes [Thu, 28 Apr 2005 19:46:04 +0000 (19:46 +0000)]
0.9.0.2:
Note another threading special bug
William Harold Newman [Mon, 25 Apr 2005 14:47:13 +0000 (14:47 +0000)]
0.9.0.1:
logged a bug
minor comment tweaks
William Harold Newman [Sun, 24 Apr 2005 20:28:56 +0000 (20:28 +0000)]
0.9.0:
release, tagged as sbcl_0_9_0
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).
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!)
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.
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 *
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.
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.
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.
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.
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.
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
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
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)).
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.
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.
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.
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.
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.
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.
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.
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.
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).
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
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.
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).
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
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.
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.
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.]
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.
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.
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")
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).
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.
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.
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
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.
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.
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.
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.
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.
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.
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).
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
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.
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.
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.
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*
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.
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
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.
William Harold Newman [Sun, 27 Mar 2005 13:55:59 +0000 (13:55 +0000)]
0.8.21:
release, tagged as sbcl_0_8_21
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".
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