Christophe Rhodes [Thu, 23 Dec 2004 13:21:26 +0000]
0.8.15.14.x86-64-again-branch.40:
Make save.c alpha32-safe
Christophe Rhodes [Thu, 23 Dec 2004 13:05:42 +0000]
0.8.15.14.x86-64-again-branch.39:
Fix thinko in reader conditional, and conditionalize
(un)signed-num primitive type aliases.
Christophe Rhodes [Wed, 22 Dec 2004 16:25:39 +0000]
0.8.15.14.x86-64-again-branch.38:
Fix for thinko in make-complex-double-float. Detected during
maxima compilation.
Christophe Rhodes [Wed, 22 Dec 2004 14:54:51 +0000]
0.8.15.14.x86-64-again-branch.37:
cheneygc fixes (builds modulo save on alpha32)
Juho Snellman [Thu, 16 Dec 2004 22:49:16 +0000]
0.8.15.14.x86-64-again-branch.36:
* Fix large immediate handling in IF-EQ (patch by Cheuksan
Edward Wang) and SAP+.
* Rewrite MOVE-IMMEDIATE to use a temporary register for
too large immediates instead of shifts and ors.
* Use MOVE-IMMEDIATE in more VOPs for some OAOO goodness.
Christophe Rhodes [Wed, 15 Dec 2004 12:50:33 +0000]
0.8.15.14.x86-64-again-branch.35:
Fix a backend bug in base-char argument handling (was causing
hemlock to spew garbage everywhere)
Juho Snellman [Tue, 14 Dec 2004 02:31:34 +0000]
0.8.15.14.x86-64-again-branch.34:
* Fix some probable 32-bit Alpha problems that were introduced
earlier during the port in primtype, sb-sprof and run-program.
* Use a more space-efficient boxed presentation for double-floats
and complex double-floats.
* Add VOP for non-constant modular left shifts (added to
other archs after the AMD64 port was originally started).
* Add a REX-prefix for XCHG.
* Implement inline allocation.
* More int -> long in gencgc.
* Only scan pages up to last_free_page instead of NUM_PAGES in
update_x86_dynamic_space_free_pointer() (otherwise GC is
ridiculously slow with large dynamic spaces).
Juho Snellman [Sun, 12 Dec 2004 06:37:21 +0000]
0.8.15.14.x86-64-again-branch.33:
Move the dynamic space into the >4G memory region.
* Use RIP-relative addressing for accessing constant TNs
and for setting the return address to a label, instead of
the disgusting games x86 plays with absolute fixups during
GC time.
* Don't use fixups as the target of absolute jumps / calls,
instead load the target address into a register first (there's
no real absolute jump/call with immediate in AMD64).
Use r13 if no temporary TN is available, as the code
generator currently never uses it anyway.
* Remove some dead code.
Juho Snellman [Sun, 12 Dec 2004 03:40:41 +0000]
0.8.15.14.x86-64-again-branch.32:
* Pass count of float arguments passed in XMM registers in RAX,
as per ABI.
Juho Snellman [Sat, 11 Dec 2004 01:43:56 +0000]
0.8.15.14.x86-64-again-branch.31:
* Change arg-type of specialized array indexing VOPs with constant
indexes to (signed-byte 29), since larger immediate displacements
are impossible.
* Fix too large shifts in %RANDOM-DOUBLE-FLOAT which caused the
random number to always have a value of approximately 0d0.
* Change SB-ALIEN:INTEGER -> SB-ALIEN:INT for socket functions,
since they're declared to take ints (32-bit on AMD64) while
SB-ALIEN:INTEGER is 64-bit.
* Add a special case for Linux/AMD64 to fcntl/f-getfl test,
O_LARGEFILE is always set on this platform.
* Maybe-add-rex-prefix in test even if register is accumulator.
Juho Snellman [Wed, 8 Dec 2004 23:25:10 +0000]
0.8.15.14.x86-64-again-branch.30:
* Add size data for all specialized array types in *META-ROOM-INFO*,
to fix ROOM and SB-SPROF.
* SET-SLOT tried to mov 64-bit immediates into an EA. Patch provided
by Cheuksan Edward Wang.
* Remove R[ABCD]X/[ABCD]L punning where possible. Extend punning
to cover all qword/byte register pairs where it can't be removed.
Kevin Rosenberg [Sun, 5 Dec 2004 19:25:50 +0000]
x86-64-again-branch.29:
* contrib/sb-aclrepl/tests.lisp: Fix bignum testing for
sb-vm::n-word-bits of 64.
Juho Snellman [Sun, 5 Dec 2004 04:33:55 +0000]
0.8.15.14.x86-64-again-branch.28:
Fix a bunch of bugs revealed by (an two month old copy of)
Paul Dietz's ansi-tests. "60 out of 18248 total tests failed".
* Remove 32-bit assumptions from bignum -> float coercion.
* It just wouldn't feel like a x86-64 commit without a sign
extension fix. This time to fast constant binops.
* Rework the bit-twiddling in DEF-SMALL-DATA-VECTOR-FROBS
to MOV the mask into a temporary register, since it no
longer fits in an immediate.
* Fix completely broken accessing of float arrays.
* Implement accessing complex float arrays.
* Add missing shift to single-float ABS VOP.
* Encode float registers properly, so that c-calls with more
than one float argument work.
* Add a rex-prefix to the sign-extending moves based on
dst size instead of src size.
* Add (%SET-)(SIGNED-)SAP-REF-WORD as suggested by Nathan Froyd.
Replace at the obvious usages of SAP-REF-32 with this.
Juho Snellman [Sat, 4 Dec 2004 15:16:47 +0000]
0.8.15.14.x86-64-again-branch.27:
* Treat the context register values as unsigned-long instead of
unsigned-int.
* Fix broken logic in SIGNED-BYTE-32-P with NOT-P.
Juho Snellman [Sat, 4 Dec 2004 01:27:51 +0000]
0.8.15.14.x86-64-again-branch.26:
Can be used as host compiler for SBCL build.
* Fix one more problem with sign-extension of immediates,
this time in STOREW.
Kevin Rosenberg [Fri, 3 Dec 2004 21:22:14 +0000]
x86-64-again-branch.25:
* Better checking of the RWXB REX bits for argument width.
Ensure that 'reg-width is reset as needed. Will likely
need to have explicit width for source and destination registers
to properly handle instructions such as "MOV AL,[R8-15]".
Kevin Rosenberg [Fri, 3 Dec 2004 19:55:47 +0000]
x86-64-again-branch.24:
* Add disassembler support for inc, dec, and string-op.
Kevin Rosenberg [Fri, 3 Dec 2004 18:55:57 +0000]
x86-64-again-branch.22:
* Add support for test opcode
* Use default immediate size 32 bits so that it most correct
for x86-64. Add separate dstate property of reg-width
since register width is uncoupled from immediate width on amd64
* mov is not yet well supported
Kevin Rosenberg [Fri, 3 Dec 2004 18:07:03 +0000]
x86-64-again-branch.21:
* Initial support for disassembly of x86-64 opcodes.
Still requires better support for discerning 32-bit vs. 64-bit
immediates as well as SSE2 support.
Juho Snellman [Fri, 3 Dec 2004 03:17:00 +0000]
0.8.15.14.x86-64-again-branch.20:
* Fix some hardcoded constants in debugger internals.
* FLOAT15 is reseved for 0d0 in SBCL, but can be clobbered in C.
Reset it back after each c-call.
* Fix yet another problem related to sign-extensions of immediates.
* Clean up some mistakes made in earlier commits about
when to use N-WORD-BITS and when N-MACHINE-WORD-BITS.
* Explicitly set -fno-omit-frame-pointer, allowing backtracing
through foreign frames.
* Rewrite os_context_register_addr, fixing the broken debugger
messages after traps.
Kevin Rosenberg [Wed, 1 Dec 2004 15:30:26 +0000]
x86-64-again-branch.19:
* fix sb-aclrepl inspector's bignum header (reported by Juho Snellman)
* Add missing instruction bytes in disassembly which were added by
read-suffix called by prefilter
* Disasble old "DEC" disassembly opcode since that is now REX prefix
* Partial fix of disassembly for POP and DEC
Juho Snellman [Wed, 1 Dec 2004 14:23:03 +0000]
0.8.15.14.x86-64-again-branch.18:
Basic debugger support (can't backtrace through foreign frames yet).
* 4 -> SB!VM::N-WORD-BYTES in x86-call-context
* Fix purifying vectors.
Kevin Rosenberg [Wed, 1 Dec 2004 05:02:43 +0000]
x86-64-again-branch.17:
* contrib/sb-aclrepl/inspect.lisp: Add 64-bit support for double
and single floats, bignums, and object addresses to inspector.
Fix character-widetag to base-char-widetag.
Kevin Rosenberg [Wed, 1 Dec 2004 02:21:19 +0000]
x86-64-again-branch.16:
* Print instruction bytes in disassembly. This may either be temporary code
to aid in fixing the x86-64 disassembler or perhaps kept as an keyword controlled,
non-ANSI extension to the DISASSEMBLE function.
Juho Snellman [Mon, 29 Nov 2004 21:04:08 +0000]
0.8.15.14.x86-64-again-branch.15:
* Use SB!VM::N-MACHINE-WORD-BITS instead of N-WORD-BITS in sb-posix
to avoid breaking Alpha.
* Fix double-float dumping in genesis with 64-bit words.
Add some OAOOM.
* Set +BACKEND-FASL-FILE-IMPLEMENTATION+ to x86-64.
* Oops. Double-float-low-bits is unsigned, not signed. Remove
sign-extension.
* Fix instruction argument order in float conversion vops.
* Force a rex-prefix on some SSE2 instructions to always enable
64-bitness.
* Fix off-by one in unsigned-byte-32 type check vops.
Juho Snellman [Sun, 28 Nov 2004 02:26:14 +0000]
0.8.15.14.x86-64-again-branch.14:
* Fix fixnum multiplication overflow.
* Replace some #!+/-alpha with suitable SB-VM::N-FOO.
* Fix + cleanup float %NEGATE / ABS.
* Sign-extend the result of foo-float-bits (to for example
get correct MINUSP results from them).
* Add ANDPS SSE2 instruction.
* Add missing simple-vector widetags to case-statements in
maybe_adjust_large_object and
possibly_valid_dynamic_space_pointer.
Juho Snellman [Sat, 27 Nov 2004 20:17:15 +0000]
0.8.15.14.x86-64-again-branch.13:
Can run Slime.
* Implement linkage-tables.
* Fix purify.
* Fix making double-floats again (MAKE-DOUBLE-FLOAT also
assumed stack consists of 32-bit words).
* Comment out the hack for building 32-bit contrib .so:s on
x86-64.
* Replace magic numbers in sb-posix:mmap with numbers derived
from sb-vm::n-foo.
Juho Snellman [Fri, 26 Nov 2004 20:26:59 +0000]
0.8.15.14.x86-64-again-branch.12:
* Fix making double-floats (DOUBLE-FLOAT-HIGH-BITS / -LOW-BITS
assumed stack consists of 32-bit words).
* Re-enable REALPART / IMAGPART.
* Replace hardcoded wordsizes related to RUN-PROGRAM with
SB!VM::N-WORD-BYTES.
* Add a horrible kludge to sign-extend signed-byte-32 return
values from c-calls.
* Replace uses of putw() in save.c with calls to something
that actually puts a word, instead of an int.
Juho Snellman [Wed, 24 Nov 2004 20:01:58 +0000]
0.8.15.14.x86-64-again-branch.11:
Creates a 170MB warm core that doesn't work.
* The high-byte register access (AH, etc) is impossible if the
instruction has a rex-prefix. Remove the high-byte registers
and add new low-byte registers SIL, DIL, R{8-15}B.
* Fix MOVE-TO/FROM-BASE-CHAR to take into account the above.
* Fix LOGCOUNT.
* Use sb!vm:word instead of the ugly '(unsigned-byte
#.sb!vm:n-word-bits) in some places.
* Fix CHECK-SIGNED-BYTE-32 again, this time for real.
Juho Snellman [Fri, 19 Nov 2004 10:33:11 +0000]
0.8.15.14.x86-64-again-branch.10:
Passes multiple GCs, can compile most of PCL (up to std-class.lisp).
* Fix loading single floats from the stack.
* Fix ABS for floats (i.e. doesn't crash, don't know whether
the results are right).
* Implement enough of the missing bits of complex floats to
allow creating prototype instances of them for PCL.
* Change appropriate ints in the GC to longs. (Mainly sizes,
and page indexes).
Juho Snellman [Thu, 18 Nov 2004 04:46:32 +0000]
0.8.15.14.x86-64-again-branch.9:
* Fix return value handling of non-local-exits.
* Make SAP-INT / INT-SAP argument and return types word-sized.
Remove kludgy typecheck workaround from FROB-INPUT.
* Change various hardcoded 4s in SB!THREAD to
SB!VM:N-WORD-BYTES.
* Fix GENERIC-+ / GENERIC-- shifts on overflow.
(1+ MOST-POSITIVE-FIXNUM) now returns correct value.
Juho Snellman [Wed, 17 Nov 2004 06:00:29 +0000]
0.8.15.14.x86-64-again-branch.8:
* Change arg-type of comparison vops specialized for
signed/unsigned constants to (...-byte 31) from 32 in
order to avoid sign extension of the immediates.
* Fix bitvector reading (4 -> n-word-bytes, :dword -> :qword).
* Add rex-prefix in random-arith-ops even if src is constant
and target is accumulator-p.
* Remove some legacy instructions that are invalid in 64 bit mode.
* Comment out bogus instruction printers so that the disassembler
doesn't crash.
* Oops. change #ifdef FOO || BAR to #if defined(FOO) || defined(BAR)
Juho Snellman [Fri, 12 Nov 2004 21:39:06 +0000]
0.8.15.14.x86-64-again-branch.7:
GC scavenges hashtables (and thereby corrupts less memory),
compiler works in the cold core, disassembler doesn't crash
immediately.
... Another 64->32 bit fixup change
... Change some hardcoded 2s to SB!VM:N-FIXNUM-TAG-BITS
... GC word-size cleanups
... Make disassembler chunks word-sized
... Fix bignum size detection in MOVE-FROM-UNSIGNED
Juho Snellman [Thu, 11 Nov 2004 03:14:13 +0000]
0.8.15.14.x86-64-again-branch.6:
More progress, though none of it immediately visible unless
you turn the GC off.
... Replace various magic constants in bit-bashing with
suitable SB!VM constants.
... Add a horrible kludge to FROB-INPUT to work around a
spurious typecheck. Still need to fix the real bug.
... Fix code that was treating fixups as being 64-bit values
(they're still 32).
... Conditionally add rex-prefix to call.
... Add check-(unsigned|signed)-byte-64 vops. Fix the costs
of the 32-bit checks.
Juho Snellman [Mon, 8 Nov 2004 17:50:41 +0000]
0.8.15.14.x86-64-again-branch.5:
Passes first GC, but with mysterious memory corruption.
... Oops, another try on the immediate 64-bit moves.
... Float arrays use SSE instead of x87.
... Fix a typoed N-WIDETAG-BITS -> N-LOWTAG-BITS in array
header generation
... Don't use DEF-FULL-DATA-VECTOR-FROBS for defining (U-B 32) /
(S-B 32) vops (assumed that the element size is N-WORD-BYTES)
... Change more x86 cpp conditionals to include x86_64
... Change more hardcoded 4s to N_WORD_BYTES
Juho Snellman [Sun, 7 Nov 2004 05:00:50 +0000]
0.8.15.14.x86-64-again-branch.4:
Gets all the way to !PPRINT-COLD-INIT (assuming the complex number
tests in pred.lisp are commented out, leaving that for later).
... Change more reader conditionals from x86 to (or x86 x86-64)
and from -alpha +alpha to conditionalization based on
SB!VM:N-WORD-BITS.
... VAR-ALLOC was shifting the length field of the header word
one bit too far to the left, causing memory corruption on
bignum operations.
... SIGNED-BYTE-32-P / CHECK-SIGNED-BYTE didn't work for negative
values (required that bits 32-64 were all 0, needs to
be all 0 or all 1).
... Pass some c-call arguments in registers instead of the
stack (AMD64 ABI)
Juho Snellman [Fri, 5 Nov 2004 04:24:16 +0000]
0.8.15.14.x86-64-again-branch.3:
... Fix &rest arguments (n-word-bytes -> n-lowtag-bits)
... Pad the short jumps in multiple-value receiving callers with
a nop, so that they're as long as the "mov %rbx,%rsp".
(This calling convention is sick).
... Use #B8-#BF moves for 64-bit immediates instead of
SHL and OR (the immediate argument for OR is sign-extended).
Juho Snellman [Tue, 2 Nov 2004 21:48:00 +0000]
0.8.15.14.x86-64-again-branch.2:
Hashing fixes to pass MAKE-HASH-TABLE / REMHASH / %PUTHASH
... change all arrays of (u-b 32) to (u-b #.sb!vm:n-word-bits)
in defstruct, hash-table and target-hash-table
... change %SXHASH-SUBSTRING to do calculations with 64-bit
modular arithmetic instead of 32-bit. The latter was
confusing something in the compiler, resulting in negative
hash values. Real bug still exists somewhere. Add some
macros to make %SXHASH-SUBSTRING less ugly, while we're at
it.
Juho Snellman [Tue, 2 Nov 2004 21:31:50 +0000]
0.8.15.14.x86-64-again-branch.1:
Float fixes needed for not crashing in MAKE-HASH-TABLE / REHASH /
%PUTHASH
... rex-prefix byte must come after legacy prefix byte
(that's why they call it the prefix byte...)
... movq is #xf3 #0xf #x7e, not #xf3 #0xf #x73
... make (add|sub|mul|div)(s|d) use (dst src) argument order
for the sake of consistency
... use scalar (instead of packed) xmm ops in
%foo-float/signed
... fix comparison vop translations / policy
... cargo-cult handling of vops that overwrite one source
register
Daniel Barlow [Wed, 20 Oct 2004 20:21:03 +0000]
... Perl 6 will be "better, stronger, faster" [...].
A preview release should be available by next summer.
Current status: Genesis works but new core dies after 1.5
function calls or so
- many more #+x86 clauses widened for -64 too
- made a bit of a mess to get ROOM to compile (it's still
broken; that's not the point)
- lea doesn't work when the destination is a stack location,
so don't use it like that
- cvttss2si works better when called with the right number of
arguments, so use it like that
Daniel Barlow [Wed, 20 Oct 2004 10:52:48 +0000]
"The good news is that in 1995 we will have a good operating
system and programming language; the bad news is that they
will be Unix and C++."
Expunge bits of long-float support as and when we see it
Cold boot doesn't need complex numbers (I think; at least,
don't need them yet) so temprarily comment out the definitions
of realpart and imagpart
c-call for an x86-64 looks remarkably like that for an x86.
We should find a better target-feature for "uses alien stack"
than (or x86 x86-64)
some 64 vs 32 bit issues in primtype still need working
through
add FP-{SINGLE,DOUBLE}-ZERO IMMEDIATE-CONSTANTs: currently we
reserve xmm15 for that purpose
movzx won't load a short immediate number and zero-extend it;
substitute lea
comparison vops for floats had info args all ove the place:
tidy
new SINGLE-FLOAT-BITS, DOUBLE-FLOAT-HIGH-BITS, DOUBLE-FLOAT-LOW-BITS
vops
make REG-TN-ENCODING and EMIT-EA and all that stuff understand
FLOAT-REGISTERs
Various float VOP brainos, fixed
Added a bunch of files that missed CVS last time
Daniel Barlow [Mon, 18 Oct 2004 22:50:07 +0000]
"just a hobby, won't be big and professional like gnu"
Bunch of missing files copied across from the previous attempt
Hack make-config.sh to understand x86-64 a bit better
Break c-call (it was broken anyway) for floats in callout
%%NIP-VALUES by renaming register names int he x86 version
Random runtime frobs
Daniel Barlow [Mon, 18 Oct 2004 21:16:16 +0000]
"640 k should be enough for anyone" : resuscitating the AMD64 port
Add necessary "128 bit media" instruction definitions to
compile float.lisp
Rename XMM register-related variables back to "float"
Nikodemus Siivola [Mon, 18 Oct 2004 14:59:34 +0000]
0.8.15.18: Linkage table tweaks & alien bugfix
* Build with linkage-table by default on x86/NetBSD and
sparc/Linux as well.
* Don't try to be too clever about when to warn user about
alien definitions when saving cores on non-linkage-table
platforms: do it unconditionally.
* Fix parsing of recursive alien record and union types
(reported by Thomas F. Burdick, port of Helmut Eller's
patch for the same problem in CMUCL.)
Daniel Barlow [Mon, 18 Oct 2004 13:07:41 +0000]
0.8.15.17
Merge NetBSD stack exhaustion patch from Richard Kreuter:
after a signal handler returns, NetBSD restores esp from the
mcontext's uesp slot, not the esp slot
(sbcl-devel 2004-10-15)
Nikodemus Siivola [Mon, 18 Oct 2004 12:37:53 +0000]
0.8.15.16: "oops"
* Ignorance may be a bliss, but IGNOREABLE is not a
declaration.
Nikodemus Siivola [Mon, 18 Oct 2004 12:16:35 +0000]
0.8.15.15: Removing non-ANSI FTYPE proclaims and TYPE declarares from PCL
* Use internal machinary for accessor FTYPE information
instead of PROCLAIM.
* Don't declare TYPE for special DEFMETHOD parameters:
setq-p hack doesn't work for those. Python not happy,
but no can do right now.
* Incidentally these changes also fix all current known
package-lock bugs.
Alexey Dejneka [Wed, 13 Oct 2004 18:05:36 +0000]
0.8.15.14:
* Fix bug MISC.427: rebuild DFO before loop analysis.
Juho Snellman [Tue, 12 Oct 2004 22:01:39 +0000]
0.8.15.13:
Port over / reconstruct ancient CMUCL loop analysis code.
Improve register allocation:
... Pack TNs that are used in deep loops first, giving them a
higher chance of getting allocated in a register.
... Inside loops, pack the most used TNs first.
... When (> SPEED COMPILE-SPEED) attempt to pack the TNs into
the most used locations in the SB instead of the earlier
behaviour of scattering them into as many locations as
possible. This results in tighter allocation / fewer spills.
Juho Snellman [Tue, 12 Oct 2004 21:14:40 +0000]
0.8.15.12:
On non-x86 platforms allocate the header TN of the var-alloc
VOP in a non-descriptor-register instead of an any-register.
Fixes "attempted to scavenge non-descriptor value" warning.
Christophe Rhodes [Wed, 6 Oct 2004 22:55:57 +0000]
0.8.15.11:
Fix ~< justification directive (patch essentially that applied
by rtoy for cmucl 2004-08-27)
Christophe Rhodes [Wed, 6 Oct 2004 17:01:05 +0000]
0.8.15.10:
Fix PPRINT-TAB (as implemented by COMPUTE-TAB-SIZE).
... it was, well, completely wrong.
Christophe Rhodes [Wed, 6 Oct 2004 15:31:39 +0000]
0.8.15.9:
PPRINT-INDENT should take reals, not just integers, as arguments.
... make it so.
... note a possible bug in the way it's been made so.
Christophe Rhodes [Wed, 6 Oct 2004 12:56:14 +0000]
0.8.15.8:
Fix for PRINT-LEVEL.8 and PRINT-LEVEL.9.
... ANSI makes the slightly bizarre requirement that while
the slots of a structure are 'components' in the sense of
*PRINT-LEVEL*, the type name isn't. So, printing a slotless
struct does not involve descending a level.
Daniel Barlow [Sun, 3 Oct 2004 00:57:13 +0000]
0.8.15.7
Threading fixes :
- bind *restart-clusters* *handler-clusters*
*condition-restarts* at thread entry: inter-thread restarts
don't work (nor is it clear what they'd do if they did)
- threads exit when their initial function returns, no need to
call unix-exit (which may do interesting things with file
buffers that we'd rather didn't happen)
arrange_return_to_lisp_function wasn't restoring esp
properly. Not sure it ever makes a difference in practice,
but fix it anyway.
Alexey Dejneka [Sat, 2 Oct 2004 07:48:32 +0000]
0.8.15.6:
* Fix bug from the Debian report #273606 by Gabor Melis:
special variable *ALLOW-INSTRUMENTING* controls insertion of
debug CATCH and stepper forms; is is enabled during IR1
conversion (initial and inline expansion) and disabled
otherwise (e.g. for IR1 transforms).
Christophe Rhodes [Fri, 1 Oct 2004 13:24:21 +0000]
0.8.15.5:
Fix for DEFGENERIC/FUNCTION/:METHOD interaction (Zach Beane
2004-09-29 sbcl-devel)
Christophe Rhodes [Fri, 1 Oct 2004 12:35:26 +0000]
0.8.15.4:
Fix for method redefinition WARNING (Zach Beane sbcl-devel
2004-09-24)
... slight tweak to get &optional (stream *standard-output*)
right.
Christophe Rhodes [Thu, 30 Sep 2004 20:20:26 +0000]
0.8.15.3:
Well, as one-line patches go, that was pretty bad. Fix the
(SIGNED-BYTE N) streams problem, and additionally fix
(SIMPLE-STRING) as a type specifier for sequence creators.
Christophe Rhodes [Thu, 30 Sep 2004 13:59:03 +0000]
0.8.15.2:
Fix for (signed-byte N) read/write consistency (reported by
Bruno Haible cmucl-imp 2004-09-06)
Christophe Rhodes [Thu, 30 Sep 2004 13:48:49 +0000]
0.8.15.1:
Fix POSITION on displaced vectors (PFD tests).
... whoops!
... (you know, it's good not to have to think of a tagline for
commits once in a while :-)
William Harold Newman [Wed, 29 Sep 2004 19:34:39 +0000]
0.8.15:
some trivial text fixes (like s/the the/the/)
release, tagged as sbcl_0_8_15
Andreas Fuchs [Tue, 28 Sep 2004 08:42:57 +0000]
0.8.14.30:
One last fix before the release: make REMOVE-DUPLICATES :START work
* Fix due to Peter Graves and the Sacla test suite
* Also add a test case for that and DELETE-DUPLICATES, while we're
at it.
William Harold Newman [Sun, 26 Sep 2004 22:37:34 +0000]
0.8.14.29:
merged Brian Mastenbrook's fix for SBCL build on OS X
broke some long lines (turning 1-liner into slightly
nontrivial-looking patch, alas)
William Harold Newman [Sun, 19 Sep 2004 19:38:55 +0000]
0.8.14.28:
"not when there is nothing more to add, but when there is
nothing more to be taken away"
deleted old DocBook manual sources
deleted references to DocBook manual sources (in DOCDOC and
clean.sh and so forth)
minor tidying of doc-building and doc/-cleaning machinery
(hopefully leaving it working basically as before)
William Harold Newman [Sun, 19 Sep 2004 19:16:19 +0000]
0.8.14.28:
"not when there is nothing more to add, but when there is
nothing more to be taken away"
deleted old DocBook manual sources
deleted references to DocBook manual sources (in DOCDOC and
clean.sh and so forth)
minor tidying of doc-building and doc/-cleaning machinery
(hopefully leaving it working basically as before)
Christophe Rhodes [Sun, 19 Sep 2004 09:32:21 +0000]
0.8.14.27:
Fix for "Strange bug in MOP" (R. Mattes sbcl-help 2004-09-15)
... we need the CPL before the class has been fully finalized;
... can't use SLOT-BOUNDP (see note in CPL-OR-NIL);
... define new slot in class to hold boundp information.
Christophe Rhodes [Wed, 15 Sep 2004 19:48:32 +0000]
0.8.14.26:
Add references to the FORMAT subsystem
... make FORMAT-ERROR inherit from REFERENCE-CONDITION;
... make REFERENCE-CONDITION exist on the host, with
more-or-less the same interface (though no printing);
... elide printing "See also: " if we have a reference condition
but no references. (This change in a
REFERENCE-CONDITION's contract is probably going to
irritate our friends in the slime world...);
... decorate format-related logic with :REFERENCES initargs.
Christophe Rhodes [Wed, 15 Sep 2004 17:54:07 +0000]
0.8.14.25:
Fix for ~<~:;~> and ~W/~I/~:T/~_/~<~:> interaction in CLHS
22.3.5.2.
Nikodemus Siivola [Tue, 14 Sep 2004 18:11:24 +0000]
0.8.14.24: En Garde!
* Robuster control stack exhaustion handling:
automagically reprotect the guard-page after enough
stack has unwound.
* Simple stress tests for this.
Christophe Rhodes [Tue, 14 Sep 2004 17:25:16 +0000]
0.8.14.23:
Attempt to fix the fixnump()-related problems in the runtime.
This version Works For Me, but then so did the old one...
Christophe Rhodes [Tue, 14 Sep 2004 14:07:09 +0000]
0.8.14.22:
Fix spurious code deletion notes from PPRINT-LOGICAL-BLOCK
Nikodemus Siivola [Tue, 14 Sep 2004 07:04:39 +0000]
0.8.14.21: oops
* Clean up bogus character from docstring
of LOAD-SHARED-OBJECT, which made cvs think
it was a binary file. *blush*
Nikodemus Siivola [Tue, 14 Sep 2004 06:51:12 +0000]
0.8.14.20: Documentation madness, yet again
* Merge a partial rewrite of the docstring extractor,
capable of handling a few more cases and providing
nicer xref-names: @xref{Macro common-lisp:trace}
instead of @xref{macro-common-lisp-trace}.
* Reformat a few docstrings for nicer display.
* Add documentation for LOAD-SHARED-OBJECT to the manual.
* Move SAVE-LISP-AND-DIE to "Starting and Stopping"
chapter. Say bye-bye to "Interface to Low-level
Implementation."
* Extract the version number for the manual from
the SBCL the docstrings are pulled from, not
version.lisp-expr.
Alexey Dejneka [Tue, 14 Sep 2004 03:38:14 +0000]
0.8.4.19:
* Quick fix: disable insertion of stepping forms in
FILTER-LVAR. (The proper way would be to rename
*ALLOW-DEBUG-CATCH-TAG* to *ALLOW-CODE-INSTRUMENTATION* and
use it to disable insertion of stepping forms into
internally generated code, but first I'd like to restore
SLIME compilability.)
Nikodemus Siivola [Mon, 13 Sep 2004 22:51:38 +0000]
0.8.14.18: non-x86 %listify-rest-args fixes
* Fix buildabillity on non-x86 arches. Tested only on
sparc, though.
Alexey Dejneka [Mon, 13 Sep 2004 15:56:07 +0000]
0.8.14.17:
* Fix MISC.391.
Nikodemus Siivola [Mon, 13 Sep 2004 15:25:08 +0000]
0.8.14.16: Zipper Up
* Fix deftype lambda-list parsing to bind unsupplied
keyword parameters to * instead of NIL if no initform
was supplied -- only one of the four cases used to be
handled correctly. Reported by Johan Bockgård on #lisp
* Fix #347: define-compiler-macro lambda-list parsing
binds correctly when FUNCALL appears as the car of the
form (port of Raymond Toy's fix for the same from
CMUCL). Also reported by Johan Bockgård.
* In course of fixing the latter, make simple but
philosophically profound change to parse-defmacro: what
was error-kind is now thought of as a context marker.
* Tests, tests, tests
Alexey Dejneka [Mon, 13 Sep 2004 13:23:44 +0000]
sbcl-0.8.14.15:
* Provide stubs for %%POP-DX and %%NIP-DX.
Nikodemus Siivola [Mon, 13 Sep 2004 08:36:29 +0000]
0.8.14.14: Two commits for the price of one
* Clean up indentation of IR1-CONVERT
* NEWS entry about single stepping.
Nikodemus Siivola [Mon, 13 Sep 2004 07:14:35 +0000]
0.8.14.13: Step SBCL, step!
* Merge the new intrumentation based single stepper,
excise stale breakpoint code for STEP; TRACE breakpoints
should be unaffected.
* A dash of documentation.
Alexey Dejneka [Mon, 13 Sep 2004 06:01:11 +0000]
0.8.14.12:
* New bug.
Alexey Dejneka [Mon, 13 Sep 2004 05:40:27 +0000]
sbcl-0.8.14.11:
* Merge DX sbcl-0-8-13-dx branch.
* Out-of-line VALUES does not cons.
* Forbid loading of initialization files in foreign.test.sh.
Nikodemus Siivola [Sat, 11 Sep 2004 12:54:25 +0000]
0.8.14.10: quoth the FORMAT, LOOP for on!
* Merge FORMAT and LOOP patches by Julian Squires
and Teemu Kalvas respectively, plus test-cases.
William Harold Newman [Fri, 10 Sep 2004 15:36:17 +0000]
0.8.14.9:
fixes for build on my old Debian system...
...added missing #!+LINKAGE-TABLE
...converted "cd foo" to "cd ./foo" so that CDPATH-based logic
won't helpfully announce the name of the new dir to
stdout (and thus into local-target-features.lisp-expr);
then "cd ./foo > /dev/null" for overkill
generally grepped for and changed "cd foo" to "cd ./foo" to
reduce the amount of CDPATH ambiguity involved and
the amount of stdout noise generated
Nathan Froyd [Fri, 10 Sep 2004 14:22:38 +0000]
0.8.14.8:
"These are not the tests you're looking for."
Oops. Fix new tests as suggested by Christophe on sbcl-devel.
Nikodemus Siivola [Fri, 10 Sep 2004 09:28:48 +0000]
0.8.14.7: self building. self building is good
* Oops fixage, to make self builds possible
once again.
Nathan Froyd [Thu, 9 Sep 2004 20:50:11 +0000]
0.8.14.6:
Oops. Fix dumping of specialized arrays whose elements are
smaller than a single byte.
Now with added tests! Passes all tests.
Nikodemus Siivola [Thu, 9 Sep 2004 12:10:11 +0000]
0.8.14.5: Join the foreign legion!
* x86/FreeBSD, x86/Linux and Sparc/SunOS now have
linkage-table support, allowing SAVE-LISP-AND-DIE to
function properly in the presence of loaded shared
objects.
* As a related cleanup automate testing for dlopen
support on the plaform, and conditionalize
LOAD-SHARED-OBJECT support on the resulting
:os-provides-dlopen feature.
Nathan Froyd [Wed, 8 Sep 2004 19:22:47 +0000]
0.8.14.4:
Oops. Better write things in the dumper as halfwords in addition
to reading them as such in the fasl loader.
Nathan Froyd [Wed, 8 Sep 2004 18:17:36 +0000]
0.8.14.3:
FASL changes for 64-bit compatibility
* read and write appropriate fop args as word-sized chunks rather
than 32-bit-sized chunks
* fixes for 32-bit assumptions in array sizes and elsewhere
* a few cleanups along the same lines
Passes all tests and appears to not break FASL compatibility.
Nathan Froyd [Wed, 8 Sep 2004 16:05:14 +0000]
0.8.14.2:
Lots of GC cleanups:
* use N_WORD_BYTES where appropriate, even in gencgc.c
* use inline functions instead of macros (there are a few cases
yet to replace, though)
* use `fixnump' where possible instead of `& 0x3' (which will
break with 64-bit ports)
* tweak NWORDS to function correctly for n_bits greater than
the word size (important for 64-bit ports)
* changes to use to new, improved NWORDS function when
appropriate (e.g. for determining the length of float arrays)
purify.c needs some of the same tweaks; I have a version which
seems to work on alpha64 but fails at the end of warm-init.
Passes all tests.
Kevin Rosenberg [Wed, 1 Sep 2004 19:59:10 +0000]
0.8.14.1:
Fix for defgeneric expansion as reported on sbcl-devel Aug 31, 2004
William Harold Newman [Mon, 30 Aug 2004 22:06:25 +0000]
0.8.14:
release, tagged as sbcl_0_8_14
Nikodemus Siivola [Thu, 26 Aug 2004 16:17:06 +0000]
0.8.13.80: Last minute manual twiddling
* Fix a bunch of tyepos, including the all-important
distinction between < and >.
* Correct cross-references pertaining to
*INVOKE-DEBUGGER-HOOK*.
* Remove cartouches from docs, as they seem to mess up the
HTML output.
* Remove a duplicated text about muffle-conditions, left in
after a cut & paste fest.
Nikodemus Siivola [Wed, 25 Aug 2004 19:25:52 +0000]
0.8.13.79: ...Flew Together
* "Oops." Fix the piping to /dev/null in
tools-for-build/grovel-features.sh so that it doesn't
puke compiler-errors all over the place -- specifically
to local-target-features.lisp-expr...
Nikodemus Siivola [Wed, 25 Aug 2004 14:24:23 +0000]
0.8.13.78: Birds of Feather
* Fix dladdr bogosities: test if dladdr is supported on
the platform, and add an ldso_stub for it if so. This
so that SBCL isn't dependant on the dladdr being at the
same location at runtime as it was on the build-host.
Move the dummy definition for FOREIGN-SYMBOL-IN-ADDRESS
to target-load, so that backtraces on target will work
before foreign.lisp is built. Clean up the real F-S-I-A
definition to use the :os-provides-dladdr feature.
* Fix manual bogosities: generate functions signalling
UNSUPPORTED-OPERATOR-ERROR for SB-BSD-SOCKETS
platform-dependant sockopts on platforms where they're
not supported; make these functions have the normal
doctrings. This so that manual building will work on
non-Linux as well. Also clean up the .sbclrc examples
slightly.
Christophe Rhodes [Wed, 18 Aug 2004 17:23:06 +0000]
0.8.13.77:
Some bugfixes
... make failures of REQUIRE printable. How did that happen?
... patch from Dave Roberts (sbcl-devel 2004-08-18) for
sb-bsd-sockets export
... fix for ENOUGH-NAMESTRING, allowing :relative pathnames
to be namestringized.
Nikodemus Siivola [Wed, 18 Aug 2004 12:58:41 +0000]
0.8.13.76: Doc'a'tweak
* Update the asdf.texinfo from upstream so that
install-info will work.
* Nicer html installation hierarchy.
Nikodemus Siivola [Wed, 18 Aug 2004 12:42:43 +0000]
0.8.13.75: MORE MANUALS
* Pull asdf.texinfo from upstream; build and install
it along with the rest of the documentation.