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
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)
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 :/
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.
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)
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)
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().
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.
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.
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.
Christophe Rhodes [Mon, 14 Mar 2005 09:54:43 +0000 (09:54 +0000)]
0.8.20.20:
Fix handling of SIG_MEMORY_FAULT in the (conceptual)
interrupt_handle_now() case -- arrange_return_to_lisp_function()
to MEMORY_FAULT_ERROR instead, for x86(-64). (I hope I
haven't broken anything on other architectures... please check!)
... also log problem with reporting the error in BUGS
Christophe Rhodes [Sun, 13 Mar 2005 17:44:34 +0000 (17:44 +0000)]
0.8.20.19:
Merge sb-introspect improvements from Luke Gorrie (sbcl-devel
"Re: definition-source-created in sb-introspect.lisp"
2005-03-13
Nikodemus Siivola [Fri, 11 Mar 2005 18:54:34 +0000 (18:54 +0000)]
0.8.20.18: x86 --> (and x86 linux)
"Mature debugger function looking for love; WLTM a serious hacker
to share my kinks with. ``It's what's inside that counts.'' Rpl 2
SBCL CVS, X86-CALL-CONTEXT"
William Harold Newman [Fri, 11 Mar 2005 17:09:49 +0000 (17:09 +0000)]
0.8.20.17:
suppressed a VERIFY-BACKTRACE test, because it seems to be
broken independent of the haiblefixes I'm merging
merged various fixes from Bruno Haible sbcl-devel 2005-03-10.
(Note that some can't be properly exercised w/out a
Mac or CLISP, but since they were self-evidently broken
before (e.g., #+DARWIN or SUBTYPEP where only #!+DARWIN
or SB!XC:SUBTYPEP makes sense), I merged them on the
theory that it can't be making things fundamentally
worse.:-)
(+ unrelated .cvsignore tweaks to reduce general CVS nagging)
Brian Downing [Fri, 11 Mar 2005 07:00:51 +0000 (07:00 +0000)]
0.8.20.16:
Fixed cross-compilation problems to and from Darwin/PPC.
* #+darwin changed to #!+darwin before linkage-table constants
in src/compiler/ppc/parms.lisp
Nikodemus Siivola [Thu, 10 Mar 2005 23:26:06 +0000 (23:26 +0000)]
0.8.20.15: remove TOPLEVEL restart
* add TOPLEVEL/TOP debugger command for convenience, making
it return to the top level.
* use the gained screen real-estate to insert an empty
line between restarts and the first frame.
Juho Snellman [Thu, 10 Mar 2005 06:22:44 +0000 (06:22 +0000)]
0.8.20.14:
A rewrite of the x86-64 disassembler infrastructure for better
handling of operand sizes and register widths (patch by Lutz Euler,
sbcl-devel/"Improving the x86-64 disassembler" on 2005-03-06).
Nikodemus Siivola [Thu, 10 Mar 2005 06:01:12 +0000 (06:01 +0000)]
0.8.20.13: document current initialization file semantics
Nikodemus Siivola [Wed, 9 Mar 2005 18:49:40 +0000 (18:49 +0000)]
0.8.20.12: policy control, the uncontroversial parts
* get rid of MAKE-NULL-INTERACTIVE-LEXENV
* use READ & EVAL to process initialization files
* more restarts available during initialization file and
--eval option processing (CONTINUE is "skip to next
form / option, ABORT is "skip this initialization file / all
--eval options".)
Alexey Dejneka [Wed, 9 Mar 2005 04:23:08 +0000 (04:23 +0000)]
0.8.20.11:
* Fix bug, reported by David Tolpin on c.l.l: LOAD should bind
*LOAD-PATHNAME* to the merged pathname.
Christophe Rhodes [Tue, 8 Mar 2005 18:41:28 +0000 (18:41 +0000)]
0.8.20.10:
Fix ctor/package deletion problems (Tim Daly sbcl-help 2005-03)
... MORE GENERALIZED FUNCTION NAMES
Rudi Schlatte [Mon, 7 Mar 2005 17:56:10 +0000 (17:56 +0000)]
0.8.20.9
Fix sb-simple-streams; all tests pass again:
* Test that clear-input can be called without errors but don't make
assumptions about the stream state afterwards
* Fix some LISTEN failures (simple-stream encapsulated in a two-way
stream, incorrect assumptions about return value of
stream-misc-dispatch :listen)
Alexey Dejneka [Mon, 7 Mar 2005 06:53:14 +0000 (06:53 +0000)]
0.8.20.8:
* Disable backtrace checking on (and x86 linux).
* Describe bugs MISC.555 and MISC.563.
* Define out-of-line %ATAN2 on x86 (fix MISC.564).
Alexey Dejneka [Sun, 6 Mar 2005 10:33:28 +0000 (10:33 +0000)]
0.8.20.7:
While we are discussing SB-WALKER, bug 276 has risen again:
* fix a case with M-V-SETQ;
* record a problem with global variables.
Christophe Rhodes [Thu, 3 Mar 2005 17:15:17 +0000 (17:15 +0000)]
0.8.20.6:
Make FILE-STREAM and STRING-STREAM potential mixins in CLOS
(... and also, hackily, into structures.)
... adjust FD-STREAM, and the various ANSI string streams.
... sb-simple-streams can now make file-simple-stream and
string-simple-stream subclasses (and hence subtypep)
the relevant mixin.
Caveat downloader I: This merge includes David Lichteblau's
sb-simple-streams test suite extension, from which seven tests
fail.
Caveat downloader II: debug.impure.lisp is failing for me on
x86/Linux. I'm pretty sure this is not my fault -- I blame the
debugger restructuring -- but it could be anyway.
Caveat user: Bad Things happen if you try to mix both string-stream
and file-stream into the same subclass. Don't Do It.
Brian Mastenbrook [Thu, 3 Mar 2005 00:10:08 +0000 (00:10 +0000)]
0.8.20.5: Candidate for minor bug fix of the year:
* (funcall (compile nil '(lambda () (typep t '(member t nil))))) => T, not (T)
Nikodemus Siivola [Wed, 2 Mar 2005 09:54:43 +0000 (09:54 +0000)]
0.8.20.4: unbreak debugger even more
* use *DEBUG-IO* more consistently.
Nikodemus Siivola [Wed, 2 Mar 2005 06:45:47 +0000 (06:45 +0000)]
0.8.20.3: unbreak debugger
* don't use PREPROCESS-FOR-EVAL for EVAL in the debugger since
the documentation was just updated to that effect, and it
takes two arguments anyways. Restoring this as part of the
debugger command loop might be nice, but potentially confusing.
Christophe Rhodes [Tue, 1 Mar 2005 10:54:36 +0000 (10:54 +0000)]
0.8.20.2:
Fix the compiler note emission from COUNT and EQUAL on bit-vectors.
(reported by Lutz Euler sbcl-devel 2005-02-16)
... rewrite (1- (ash 1 <integer 1 n-word-bits>)) as
(ash #xff...ff (- n-word-bits <integer 1 n-word-bits>))
Nikodemus Siivola [Tue, 1 Mar 2005 10:21:27 +0000 (10:21 +0000)]
0.8.20.1: fun-name fun, debugger debugged
* fix bug 32: print closures as #<CLOSURE name-goes-here>.
* fix bug 33: better inspection of closures
* remove bug 60: LIST-LOCATIONS has been deleted at some
point in history, no point in keeping a bug about it.
* move to using structured function names: (XEP FOO), etc
instead of "XEP for FOO". Ditto for component names.
* unless SB-DEBUG:*SHOW-ENTRY-POINT-DETAILS* is true
display various entry points in backtraces as if they were
"normal functions", and adjust the argument list accordingly.
* fix for debugger I/O style issues: use *DEBUG-IO*, not
*STANDARD-OUTPUT*.
* use INTERACTIVE-EVAL in the debugger instead of reimplementing
it.
* update debugger documentation.
William Harold Newman [Tue, 1 Mar 2005 02:32:08 +0000 (02:32 +0000)]
0.8.20:
release, tagged as sbcl_0_8_20
Christophe Rhodes [Wed, 23 Feb 2005 12:43:21 +0000 (12:43 +0000)]
0.8.19.39:
Whoops. NEWS asserts that LOAD copes with :external-format
arguments. Better make sure that the compiler is aware of that
too.
Alexey Dejneka [Wed, 23 Feb 2005 08:31:18 +0000 (08:31 +0000)]
0.8.19.38:
* Fix MISC.535: CONSTANT-LVAR-P looks through CASTs.
* Workaround lack of recursion recognition in XC for
PRINCIPAL-LVAR-USE.
Juho Snellman [Tue, 22 Feb 2005 22:14:04 +0000 (22:14 +0000)]
0.8.19.37:
Increment +fasl-file-version+. It just wouldn't feel like a real
SBCL release without invalidating the fasls.
* Some FFI-related fasls became incompatible at about 0.8.19.26.
Probable cause: "lazy alien resolution improvements".
Christophe Rhodes [Tue, 22 Feb 2005 10:34:35 +0000 (10:34 +0000)]
0.8.19.36:
make FILE-POSITION-FOR-ERROR-OR-NIL understand two-arg FILE-POSITION
Alexey Dejneka [Mon, 21 Feb 2005 19:17:39 +0000 (19:17 +0000)]
0.8.19.35:
* Fix bug, found by Paul F. Dietz in
(CTYPE-OF (COMPLEX <integer> <ratio>)).
Alexey Dejneka [Sun, 20 Feb 2005 18:53:13 +0000 (18:53 +0000)]
0.8.19.34:
* Fix MISC.527: DEFTRANSFORM for BIT-AND and similar for
vectors use (ARRAY-DIMENSION v 0) instead if LENGTH to get
the full vector size.
Nikodemus Siivola [Sun, 20 Feb 2005 12:04:44 +0000 (12:04 +0000)]
0.8.19.33: fix inspection of specialized arrays
Patch by Simon Alexander on sbcl-devel 2005-02-19.
Note to self: it seems that we don't currently have
_any_ tests for the inspector. Make it not so, someday
soon for preference.
Christophe Rhodes [Fri, 18 Feb 2005 08:22:23 +0000 (08:22 +0000)]
0.8.19.32:
In response to a question on #lisp IRC...
... make the style-warning for #S(FOO #\A 1) include a reference
to the relevant section in CLtS.
Juho Snellman [Thu, 17 Feb 2005 21:59:01 +0000 (21:59 +0000)]
0.8.19.31:
x86-64 floating point improvements:
* Optimization: fewer moves on floating point add/sub/mul/div.
Only use a temporary xmm register if absolutely needed.
* Optimization: When restoring xmm15 to zero after a c-call,
use xorpd instead of a temporary register and movq.
* Replace broken x87 FLOATING-POINT-MODES and SET-FLOATING-POINT-MODES
with SSE code that uses the mxcsr control register.
* Fix movd / movq from a xmm register to a gp register.
* Add new instructions: ldmxcsr, stmxcsr
Nikodemus Siivola [Thu, 17 Feb 2005 14:30:38 +0000 (14:30 +0000)]
0.8.19.30: less COMPILE-FILE verbosity
First stab at fixing bug #7. To get output approximately as
verbose as the old behaviour use :TOP-LEVEL-FORMS as the
value of the :PRINT option to COMPILE-FILE.
Note: Giving users control over the way things are printed
via *COMPILER-PRINT-VARIABLE-ALIST* is OTOH a good thing,
but it also seems to be used for ratheer diverse things,
and people could reasonably want to customize them
separately. Gah.
Also list x86/FreeBSD4 as "expected to pass tests" in
make.sh output, as that seems to be the case.
Christophe Rhodes [Thu, 17 Feb 2005 11:26:07 +0000 (11:26 +0000)]
0.8.19.29:
Add (untested, so sue me) getenv and putenv to sb-posix
Nikodemus Siivola [Wed, 16 Feb 2005 06:02:04 +0000 (06:02 +0000)]
0.8.19.28: fix loading of multiply forward-refrenced layouts
Bug orginally reported and fix provided by Cheuksan Wang,
basis for test-case provided by Jason Dagit.
Nikodemus Siivola [Sun, 13 Feb 2005 14:33:51 +0000 (14:33 +0000)]
0.8.19.26: fix bignum printing:
* algorithm by Harald Hanche-Olsen.
* good: less memory-intensive, faster for smallish
bignums.
* bad: more CPU-intensive for large eg. 2^1000000)
bignums, around order of 2^
10000000 becoming essentially
unprintable.
lazy alien resolution improvement:
* resolve undefined functions to the address of
undefined_alien_function instead of the guard
page to work around the bus error on ppc/darwin.
* also buys us discrimination between undefined alien
variables and functions (on all platforms).
note ppc/darwin problems revealed by tests/ in BUGS, and disable
those tests:
* floating-point overflow not signalled
* type-error from sb-profile:report
* bit-and with huge bit-vectors fails with a lost
gc-invariant (maybe a general cheney-gc problem?)
=> All tests now pass on ppc/darwin, note this in the message
at the end of make.sh, marking x86/Linux and ppc/Darwin
as platforms where all tests are supposed to pass.
Nikodemus Siivola [Sun, 13 Feb 2005 14:27:01 +0000 (14:27 +0000)]
message
William Harold Newman [Fri, 11 Feb 2005 21:49:36 +0000 (21:49 +0000)]
0.8.19.25:
Protect condition printers from errors which might be
signalled by FILE-POSITION.
Juho Snellman [Fri, 11 Feb 2005 12:09:44 +0000 (12:09 +0000)]
0.8.19.24:
Fix ansi-test failures related to pretty-printing backquoted forms
when *PRINT-CIRCLE* is true. Print the ",@" and ",." tokens with
WRITE-STRING instead of PRINC to prevent circularity detection
from applying to them.
Juho Snellman [Fri, 11 Feb 2005 07:32:33 +0000 (07:32 +0000)]
0.8.19.23:
Optimize float/fixnum comparisons, primarily for the benefit
of McCLIM. If the fixnum's value is in a range where it's
guaranteed to have an exact float representation, coerce it to
a float and do a float comparison. Otherwise fall back to the
old behaviour of rationalizing the float.
Alexey Dejneka [Thu, 10 Feb 2005 04:23:08 +0000 (04:23 +0000)]
0.8.19.22:
* Reduce consing for out-of-line AREF: declare SUBSCRIPTS
argument for %ARRAY-ROW-MAYOR-INDEX be DYNAMIC-EXTENT.
(reported by Baughn on #lisp)
Juho Snellman [Thu, 10 Feb 2005 00:05:56 +0000 (00:05 +0000)]
0.8.19.21:
x86-64 disassembler improvements.
* Detect RIP-relative addressing in SB-VM::PREFILTER-REG/MEM.
* Add constant notes (e.g. ; #<FDEFINITION object for OPEN>)
for instructions that use RIP-relative addressing.
Juho Snellman [Wed, 9 Feb 2005 23:53:30 +0000 (23:53 +0000)]
0.8.19.20:
Declaim the type of *CHARACTER-DATABASE*. Decreases the total
runtime of the ansi-test suite by about 3-5%.
Paul F. Dietz [Wed, 9 Feb 2005 23:48:45 +0000 (23:48 +0000)]
Added optimization opportunity #25: improved type-based optimization
of EQL forms.
Christophe Rhodes [Mon, 7 Feb 2005 12:41:42 +0000 (12:41 +0000)]
0.8.19.19:
Fix bug in WITH-INPUT-FROM-STRING (PFD ansi-tests)
... only update INDEX on normal exit. (Fix from Bryan O'Connor)
Christophe Rhodes [Mon, 7 Feb 2005 11:49:08 +0000 (11:49 +0000)]
0.8.19.18:
Fix bug from PCL depessimization -- it is possible to get :DEFINED for
:TYPE :KIND, but probably only for built-in-classes.
(Hm, actually, it might be possible to get there through some bizarre
combination of DEFTYPE and DEFCLASS.)
Alexey Dejneka [Mon, 7 Feb 2005 04:24:17 +0000 (04:24 +0000)]
0.8.19.17:
* Fix bug: ANNOTATE-FIXED-VALUES-LVAR can be called on a DX
LVAR (through CAST). (reported by Timmy Douglas).
Juho Snellman [Sun, 6 Feb 2005 05:58:40 +0000 (05:58 +0000)]
0.8.19.16:
Various x86-64 improvements.
* Fix some SB-ALIEN:INT / SB-ALIEN:INTEGER confusion in tests.
(Patch by Vincent Arkesteijn on sbcl-devel, "Re: x86-64 (aka
AMD64, EMT-64) support" on 2005-02-05).
* Align the stack to 16-byte boundaries for c-calls, as required
by the ABI. (Patch by Cheuksan Edward Wang).
* Omit unneccessary rex-prefix on indirect JMP. (Patch by Cheuksan
Edward Wang).
* Disassembler improvements. (Patch by Cheuksan Edward Wang).
Christophe Rhodes [Fri, 4 Feb 2005 17:23:03 +0000 (17:23 +0000)]
0.8.19.15:
Maybe speed up PCL a tiny bit more
... make the slot positioning a little less confusing, so that
the 'same' slot tends to be in the same location;
... this should help the clever DFUN mechanism to keep neat ones
like ONE-INDEX around;
... (also this puts slots in objects in the 'expected' order --
frob sb-aclrepl's dealing with the unexpected
Christophe Rhodes [Fri, 4 Feb 2005 11:46:41 +0000 (11:46 +0000)]
0.8.19.14:
Merge "PCL depessimization" as in sbcl-devel 2005-02-03
Christophe Rhodes [Fri, 4 Feb 2005 11:38:28 +0000 (11:38 +0000)]
0.8.19.13:
Repetitive code is the enemy of comprehension
... refactor %COERCE-CALLABLE-TO-FUN use in REDUCE and other
sequence functions into DEFINE-SEQUENCE-TRAVERSER.
Paul F. Dietz [Fri, 4 Feb 2005 09:28:40 +0000 (09:28 +0000)]
Certain Aarguments to sequence functions that can be functions or
function names. Coerce them to functions once instead of each time
they are applied (similar to an earlier enhancement of REDUCE).
Christophe Rhodes [Tue, 1 Feb 2005 15:44:21 +0000 (15:44 +0000)]
0.8.19.11:
Maybe fix compile-file performance regression
... only bind restarts for output where there is a possibility
of an encoding error. In particular, do not bind the
OUTPUT-NOTHING restart for binary IO.
Juho Snellman [Tue, 1 Feb 2005 03:00:01 +0000 (03:00 +0000)]
0.18.19.10:
Refactor sign-extension of signed c-call return values on x86-64:
* Also sign extend short ints (fixes bug reported by Kevin Rosenberg
on sbcl-devel, "FFI size error in sbcl-amd64").
* Move the sign-extension to a :naturalize-gen alien-type-method.
* Remove signed-byte-32 ptype (used only for some sign-extension
hacks, which have now been removed).
* Add some tests.
Christophe Rhodes [Mon, 31 Jan 2005 19:25:02 +0000 (19:25 +0000)]
0.8.19.9:
Merge patch (Teemu Kalvas "bad encoding skipper for comments"
sbcl-devel 2005-01-31)
... mcclim should compile out of the box now.
Christophe Rhodes [Mon, 31 Jan 2005 16:57:22 +0000 (16:57 +0000)]
0.8.19.8:
Fix bugs in COUNT and EQUAL on bit-vectors with round lengths
(Lutz Euler 'Bug in "count" on bit-vectors' sbcl-devel 2005-01-29)
... off by one, sigh;
... tests, but FIXME: haven't tested whether the new code is
efficient.
Christophe Rhodes [Mon, 31 Jan 2005 14:04:22 +0000 (14:04 +0000)]
0.8.19.7:
SET-SYNTAX-FROM-CHAR fix
... SET-SYNTAX-FROM-CHAR now copies the dispatch table if necessary.
Customizeable reader fixes (PFD SYNTAX.FOO ansi-tests)
... Better delineation between character syntax and character
constituent trait;
... rename SECONDARY-ATTRIBUTE to CONSTITUENT-TRAIT;
... renumber +char-attr-multiple-escape+ to below
+char-attr-consituent+;
... rename ESCAPE to SINGLE-ESCAPE;
... in token reader helper macros CHAR-CLASS<n>, get
CONSTITUENT-TRAIT only if the character is a constituent.
Christophe Rhodes [Mon, 31 Jan 2005 11:16:11 +0000 (11:16 +0000)]
0.8.19.6:
Whitespace characters should have the (shadowed) invalid
character constituent trait.
... PFD ansi-tests
Christophe Rhodes [Sun, 30 Jan 2005 22:05:29 +0000 (22:05 +0000)]
0.8.19.5:
LOAD / EXTERNAL-FORMAT interaction fix.
Christophe Rhodes [Sun, 30 Jan 2005 20:15:50 +0000 (20:15 +0000)]
0.8.19.4:
COMPILE-FILE needs to deal with :EXTERNAL-FORMAT arguments.
... pass it through to OPEN.
Christophe Rhodes [Fri, 28 Jan 2005 16:48:58 +0000 (16:48 +0000)]
0.8.19.3:
DELETE THE DRAGON
Implement fixed-format floating point through FLONUM-TO-DIGITS.
Essentially this means a whole heap of hairy logic in
FLONUM-TO-STRING, and the deletion of the Steele & White
Dragon algorithm.
... fixes (format nil "~@F" 1.23)
... fixes (format nil "~3F" -0.0)
... fixes (format nil "~G" 1d23)
... fixes (format nil "~E" 1d23)
... fixes bug 317
... does not fix bug 19, which I think is not a bug
... fixes all sorts of other stuff
It probably also breaks something, because test coverage of
this area is definitely patchy.
Christophe Rhodes [Fri, 28 Jan 2005 09:01:11 +0000 (09:01 +0000)]
0.8.19.2:
Merge David Lichteblau patches (sbcl-devel 2005-01-1x)
... docstring for INTEGER-LENGTH;
... SHLD / SHRD disassembly.
Christophe Rhodes [Thu, 27 Jan 2005 20:31:44 +0000 (20:31 +0000)]
0.8.19.1:
Merged fix from Teemu Kalvas for reading multibyte characters
across a buffer boundary ("probable bug in UTF-8 external-format
support" sbcl-devel 2005-01-23)
William Harold Newman [Tue, 25 Jan 2005 23:36:24 +0000 (23:36 +0000)]
0.8.19:
release, tagged as sbcl_0_8_19
Kevin Rosenberg [Sun, 23 Jan 2005 01:03:28 +0000 (01:03 +0000)]
0.8.18.36:
* src/compiler/x86-64/insts.lisp: Add support for disassembly of
64-bit CALL instruction.
Juho Snellman [Thu, 20 Jan 2005 20:02:29 +0000 (20:02 +0000)]
0.8.18.37:
Fix x86-64 GC error (reported by Kevin Rosenberg on sbcl-devel,
"Regression error sbcl-amd64 with CLSQL test suite").
* The alien stack was aligned on four byte boundaries, so the
contents of *ALIEN-STACK*'s value slot could sometimes look
like an (invalid) header word. Align to eight bytes instead.
Juho Snellman [Wed, 19 Jan 2005 21:11:00 +0000 (21:11 +0000)]
0.8.18.36:
x86-64 fixes:
* Implement arrange_return_to_lisp_function to make stack
exhaustion detection work.
* Fix select on fds > 32 on 64-bit platforms (patch by
Cheuksan Edward Wang).
* Copy apd's x86 fix for DATA-VECTOR-SET-C overflow from
0.8.18.35.
* Use -fPIC for building shared libraries in tests/foreign.test.sh
on x86-64.
* Remove i586_bzero from x86-64-assem.S.
Alexey Dejneka [Tue, 18 Jan 2005 04:34:55 +0000 (04:34 +0000)]
0.8.18.35:
* Fix overflow in DATA-VECTOR-SET-C VOPs for simple bit
vectors on X86 (reported by Timmy Douglas).
Kevin Rosenberg [Sat, 15 Jan 2005 22:52:59 +0000 (22:52 +0000)]
0.8.18.34:
* src/compiler/target-disassem.lisp: Don't print spaces when
stream is nil (reported by Alexey Dejneka on sbcl-devel).
Alexey Dejneka [Sat, 15 Jan 2005 09:19:43 +0000 (09:19 +0000)]
0.8.18.33:
* When non-local lexical exits are compiled with (SAFETY 0),
pass the unwind block without packing it into a VALUE-CELL.
This disables checking of tag extent, but also eliminates
one source of heap allocation in dynamic-extent closures.
* Disable intrumenting of more-entries (bug reported by Robert
J. Macomber).
Christophe Rhodes [Fri, 14 Jan 2005 18:09:01 +0000 (18:09 +0000)]
0.8.18.32:
Fixes for Rubout and Backspace syntax (PFD ansi-tests)
Juho Snellman [Fri, 14 Jan 2005 06:48:38 +0000 (06:48 +0000)]
0.8.18.31:
Some number-related x86-64 fixes.
* Fix backend bug in negative counts for ASH. (Patch by Lutz Euler
on sbcl-devel, 2005-01-09). Add some more ASH tests.
* Cargo-cult signed modular arithmetic changes from the x86
backend.
* Remove optimization of constant multiplication to shifts, adds
and leas (except for the simple cases of 2^x, 3, 5, 9) from
the x86-64 backend. It was a lot of code that's not really
of any use on any existing x86-64 processor.
* Fix 32-bit assumptions in deftransform of word-sized RANDOM
integers.
Juho Snellman [Fri, 14 Jan 2005 06:47:31 +0000 (06:47 +0000)]
0.8.18.31:
Some number-related x86-64 fixes.
* Fix backend bug in negative counts for ASH. (Patch by Lutz Euler
on sbcl-devel, 2005-01-09). Add some more ASH tests.
* Cargo-cult signed modular arithmetic changes from the x86
backend.
* Remove optimization of constant multiplication to shifts, adds
and leas (except for the simple cases of 2^x, 3, 5, 9) from
the x86-64 backend. It was a lot of code that's not really
of any use on any existing x86-64 processor.
* Fix 32-bit assumptions in deftransform of RANDOM for word-sized
integers.
Christophe Rhodes [Thu, 13 Jan 2005 22:23:23 +0000 (22:23 +0000)]
0.8.18.30:
One more octets bugfix from Robert Macomber
Christophe Rhodes [Thu, 13 Jan 2005 11:07:23 +0000 (11:07 +0000)]
0.8.18.29:
Fix READ-FROM-STRING's second return value on displaced strings.
(PFD ansi-tests)