Juho Snellman [Mon, 15 Jan 2007 21:05:43 +0000 (21:05 +0000)]
1.0.1.25:
Add limited support for LET and LET* to the fopcompiler (can only
be used for binding lexical variables which aren't closed over).
Speeds up McCLIM compilation by 5-10%.
lisphacker [Sat, 13 Jan 2007 21:05:33 +0000 (21:05 +0000)]
1.0.1.24: unwinding lisp stack frames when alien code is doing a
non-local exit.
Revert src/assembly/x86/assem-rtns.lisp changes of version 1.0.0.19.
Add Win32 SEH frame to catch-block and unwind-block object
definitions.
Changed VOPs in src/compiler/x86/nlx.lisp to set up SEH frames for
unwind-protect and unwind targets.
Added Win32-specific assembly-routines to handle unwinding and
unwind-protect frames.
Added an SEH frame to call_into_lisp.
Added a wrapper around the runtime exception handler to provide a
set of continuous stack frames over the system unwind logic (which
doesn't maintain EBP properly, thus breaking backtraces).
Added test cases for unwinding lisp stack frames from alien code.
Juho Snellman [Thu, 11 Jan 2007 21:41:59 +0000 (21:41 +0000)]
1.0.1.23:
Add generic function STREAM-FILE-POSITION, used to provide an
implementation of FILE-POSITION for Gray streams (thanks to Eric
Marsden).
Juho Snellman [Thu, 11 Jan 2007 20:58:15 +0000 (20:58 +0000)]
1.0.1.22:
Handle PATHNAME-DEVICE in ASDF-INSTALL:DIRECTORIFY (thanks to
Yaroslav Kavenchuk).
Juho Snellman [Thu, 11 Jan 2007 20:32:59 +0000 (20:32 +0000)]
1.0.1.21:
Whitespace.
Juho Snellman [Thu, 11 Jan 2007 20:31:53 +0000 (20:31 +0000)]
1.0.1.20:
Signal an error for duplicate tags in a tagbody rather than looping
infinitely, allow using NIL as a go tag (thanks to Stephen Wilson)
Juho Snellman [Thu, 11 Jan 2007 19:54:10 +0000 (19:54 +0000)]
1.0.1.19:
The expansion of SB-SPROF:WITH-PROFILING was missing the parameter to
SAMPLES-MAX-SAMPLES, which broke :SHOW-PROGRESS (thanks to Kilian
Sprotte)
Juho Snellman [Thu, 11 Jan 2007 19:46:40 +0000 (19:46 +0000)]
1.0.1.18:
Fix bug introduced in 1.0.1.7, where bogus debug variables generated
for closure variables whose value cell had not yet been allocated
could cause segfaults and gc crashes (reported by Cyrus Harmon and
Attila Lendvai on sbcl-devel)
lisphacker [Tue, 9 Jan 2007 18:10:07 +0000 (18:10 +0000)]
1.0.1.17: Remove Win32 exception trampolines
Remove context-restore trap.
Remove sigtrap_trampoline and exception_trampoline, sigtrap_emulator,
sigtrap_wrapper, and handle_win32_exception_wrapper.
Change handle_exception to call HANDLE-WIN32-EXCEPTION and
sigtrap_wrapper directly.
Remove the saved context and exception from the SEH frame structure.
William Harold Newman [Tue, 9 Jan 2007 16:27:20 +0000 (16:27 +0000)]
1.0.1.16:
logged bugs reported by Ariel Badichi
Juho Snellman [Tue, 9 Jan 2007 03:25:02 +0000 (03:25 +0000)]
1.0.1.15:
Add RESTART-FRAME command to the debugger, reduce the runtime cost
of the debug catch tags.
* Change the debugger catch tag to funcall the thrown value, rather
than just returning it.
* Make RETURN throw a thunk that returns an appropriate value,
and RESTART-FRAME throw a thunk that calls the same function again
with the same arguments.
* Always emit the debug catch with a static tag, rather than consing
up a new tag every time the catch is entered.
* To ensure that the tags are unique, the RETURN and RESTART-FRAME
commands will first cons up a new tag, find the right catch-block
structure on the stack, assign the new tag to the tag slot, and
then throw the new tag.
* Don't add the catch tags to some uninteresting (usually
compiler-generated) functions, to reduce the compilation speed
hit.
Andreas Fuchs [Mon, 8 Jan 2007 14:29:41 +0000 (14:29 +0000)]
1.0.1.14: Make sb-posix:mkstemp return both the FD and the file name.
mkstemp(3) takes a template string as an "out" parameter. The sb-posix
README states that this should be returned as a second value, so we do that.
(From a user report that the template string would not get properly
clobbered in post-1.0 sbcls. Ow.)
Christophe Rhodes [Mon, 8 Jan 2007 10:30:22 +0000 (10:30 +0000)]
1.0.1.13:
Collect output from building contribs into files in output/, for
easier remote debugging.
... also a typo fix for the manual from sb-bsd-sockets
documentation. (from Hedos on sbcl-devel)
Juho Snellman [Mon, 8 Jan 2007 03:26:20 +0000 (03:26 +0000)]
1.0.1.12:
Provide a better diagnostic for apparently broken
SB-BSD-SOCKETS installs. Also print a better error message and
return an error code from make-target-contrib.sh if any
contribs fail, so that these broken installs are less likely
to happen.
Juho Snellman [Mon, 8 Jan 2007 02:36:23 +0000 (02:36 +0000)]
1.0.1.11:
1.0.1.6 caused an error to be signaled for READ/WRITE-SEQUENCE
on unsigned-byte vectors and bivalent streams, which broke
ASDF-INSTALL. (Reported by Josip Gracin)
Juho Snellman [Wed, 3 Jan 2007 20:49:54 +0000 (20:49 +0000)]
1.0.1.10:
Suppress a spurious full warning when compiling (MAKE-LIST 0) with
a (SPACE 0) policy. (Reported and fix suggested by James Knight).
Juho Snellman [Wed, 3 Jan 2007 20:42:32 +0000 (20:42 +0000)]
1.0.1.9:
Support executable cores on NetBSD (patch from Richard Kreuter on
sbcl-devel).
Juho Snellman [Tue, 2 Jan 2007 21:15:14 +0000 (21:15 +0000)]
1.0.1.8:
Handle REQUIRE on non-asdf contrib modules more gracefully for
:EXECUTABLE cores.
Juho Snellman [Tue, 2 Jan 2007 21:11:56 +0000 (21:11 +0000)]
1.0.1.7:
Display closed over variables in the debugger for code compiled with
high debug settings.
* Use :ENVIRONMENT TNs for all closure variables.
* Allow the debug-info dumper to store debug information for
variables that were not defined in the function whose debug
information is being dumped.
Juho Snellman [Fri, 29 Dec 2006 01:41:11 +0000 (01:41 +0000)]
1.0.1.6:
Better error checking for incompatible stream / sequence types in
READ-SEQUENCE and WRITE-SEQUENCE. (Patch by Tony Martinez, sbcl-devel
2006-12-05).
Juho Snellman [Fri, 29 Dec 2006 01:01:51 +0000 (01:01 +0000)]
1.0.1.5:
Suppress a bogus style-warning for MAKE-INSTANCE on a class with
no slots and a non-standard metaclass. (Patch by Matthew Swank).
Juho Snellman [Fri, 29 Dec 2006 00:32:14 +0000 (00:32 +0000)]
1.0.1.4:
Fix Sparc build with gcc 4.1. (Patch from Rex Dieter).
Juho Snellman [Thu, 28 Dec 2006 23:48:04 +0000 (23:48 +0000)]
1.0.1.3:
Oops, initforms for &AUX parameters were evaluated multiple times
for fast-method-functions. (Reported by Kevin Reid on sbcl-devel).
sa2c [Wed, 27 Dec 2006 00:37:30 +0000 (00:37 +0000)]
1.0.1.2: support for GBK external format
(thanks to Chun Tian (binghe))
Cyrus Harmon [Tue, 26 Dec 2006 23:10:22 +0000 (23:10 +0000)]
1.0.1.1:
mach exception handlers for x86/macos
Added experimental support for mach exception handling under
x86/macos. To enable this, turn on the feature
:mach-exception-handler at build time.
* restructure args to sb-posix:define-call so that :largefile
becomes :options :largefile and add a new :c-name keyword arg.
* for #+mach-exception-handler builds, make sb-posix:fork
reestablish the mach exception handling thread after forking.
* add doc/internals-notes/mach-exception-handler-notes.
* memory_fault_handler no longer static for BSD.
* added mach_error_memory_fault_handler for unexpected memory
faults.
* #+mach-exception-handler thread changes to allocate and deallocate
mach ports.
* added protect_control_stack_{return_}guard_page_thread calls that
take a thread argument
* sigill_handler no longer static on x86.
* mach exception handling code in x86-darwin-os.c. See
doc/internals-notes/mach-exception-handler-notes for details.
William Harold Newman [Tue, 26 Dec 2006 14:57:44 +0000 (14:57 +0000)]
1.0.1:
release, will be tagged as sbcl_1_0_1
Christophe Rhodes [Wed, 20 Dec 2006 16:19:33 +0000 (16:19 +0000)]
1.0.0.36:
Fix the build on ppc/Darwin, with os_context_register_t typedef
and os_context_pc_addr function.
Christophe Rhodes [Wed, 20 Dec 2006 15:50:51 +0000 (15:50 +0000)]
1.0.0.35:
(belated addition of Gray streams examples file. Whoops).
Christophe Rhodes [Wed, 20 Dec 2006 15:47:50 +0000 (15:47 +0000)]
1.0.0.35:
Patch from Richard M Kreuter improving the Gray streams
documentation.
... minor typo fixes from patch on sbcl-devel 2006-12-19.
sa2c [Fri, 15 Dec 2006 14:54:52 +0000 (14:54 +0000)]
1.0.0.34: Fix build on Darwin/x86.
I moved typedef of os_context_register_t from bsd-os.h to
x86-bsd-os.h, but forgot to modify x86-darwin-os.h.
sa2c [Fri, 15 Dec 2006 03:28:36 +0000 (03:28 +0000)]
1.0.0.33: update build environment
.cvsignore: add more files
clean.sh: don't recurse into SCM directories
tools-for-build/canonicalize-whitespace: use more generic option to
check expand utility to make non-GNU expand happy
tools-for-build/whitespacely-canonical-filenames: add more SCM directories
sa2c [Fri, 15 Dec 2006 02:57:52 +0000 (02:57 +0000)]
1.0.0.32: support for FreeBSD/x86-64
sa2c [Fri, 15 Dec 2006 01:48:59 +0000 (01:48 +0000)]
1.0.0.31: pthread-futex: another pthread back-end of mutex
An implementation of futex by pthread. This is default back-end on
FreeBSD since pthread-lutex has some problems on these systems.
sa2c [Fri, 15 Dec 2006 01:16:36 +0000 (01:16 +0000)]
1.0.0.30: Stability fix of threading on FreeBSD
Yield current thread on thread creation so that clean-up threads can
run. This fixes some test failures on FreeBSD 7.
Christophe Rhodes [Thu, 14 Dec 2006 16:15:28 +0000 (16:15 +0000)]
1.0.0.29:
Whitespace
Nikodemus Siivola [Thu, 7 Dec 2006 12:51:25 +0000 (12:51 +0000)]
1.0.0.28: more PCL cleanups
* WRAPPER-INSTANCE-SLOTS-LAYOUT and WRAPPER-CLASS-SLOTS are
a null layer around corresponding %WRAPPER- accessors: rename
the accessors without % and remove the macros.
* CACHE-LOCK-COUNT unused, deleted.
* WRAPPER-OF-MACRO redundant, removed. Use WRAPPER-OF.
* new function MAKE-DFUN-REQUIRED-ARGS to factor out a shared
idiom as per FIXME.
* WITH-HASH-TABLE and WITH-EQ-HASH-TABLE removed: thread unsafe.
* Commentary.
Nikodemus Siivola [Thu, 7 Dec 2006 08:53:36 +0000 (08:53 +0000)]
1.0.0.27: various PCL cleanups in cache.lisp
* ALLOCATE-CACHE-VECTOR was unused -- deleted
* better GET-CACHE-VECTOR
* don't bind VECTOR as a local function
* drop a few useless (THE FIXNUM)s
* use REMHASH to clear out OWRAPPER from *PREVIOUS-NWRAPPERS*
instead of just setting its value to NIL.
* inline COMPUTE-LINE-SIZE
* WRAPPER-CACHE-NUMBER-VECTOR is identity macro -- deleted
* commentary
Juho Snellman [Wed, 6 Dec 2006 08:04:21 +0000 (08:04 +0000)]
1.0.0.26:
Purify also needs to know of the new function layout.
Nikodemus Siivola [Tue, 5 Dec 2006 22:48:11 +0000 (22:48 +0000)]
1.0.0.25: fix win32 build
* Memory faults signalled differently on Windows -- and not using a
separate condition yet.
Nathan Froyd [Tue, 5 Dec 2006 21:34:02 +0000 (21:34 +0000)]
1.0.0.24:
* Apply base+index addressing fix to x86-64's LISTIFY-REST-ARGS.
* Make dynamic-extent allocation on x86 slightly smaller
(following x86-64's lead).
Nathan Froyd [Tue, 5 Dec 2006 20:10:25 +0000 (20:10 +0000)]
1.0.0.23:
Use more efficent base+index lea instruction in %LISTIFY-REST-ARGS.
Christophe Rhodes [Tue, 5 Dec 2006 17:50:18 +0000 (17:50 +0000)]
1.0.0.22: Extensible sequences. (EXPERIMENTAL: Do Not Use As Food)
... a little bit of type system hackery, as usual; we can't
use hierarchical comparison on the newly non-sealed
classoid SEQUENCE because, well, its subclasses aren't
hierarchically arranged (take a bow, ARRAY).
... a certain amount of rearrangement of seq.lisp and related
source files; mostly, defining SEQ-DISPATCH to have
three branches rather than two, and writing trampoline
stubs.
... make CONSED-SEQUENCE understand that we can only be clever
about freshly-consed vectors.
... actually make DOVECTOR be like DOLIST, in having a tagbody,
being clever about the declarations, and so on.
... new SEQUENCEP function.
... new macro DOSEQUENCE (like DOVECTOR and DOLIST but for
sequences, used in one or two places)
... lotso &REST args for sequence functions, so fndb needed
reworking. (The &REST args have dynamic extent and
are declared as such)
... change VALIDATE-SUPERCLASS to allow SEQUENCE as a
superclass.
... disable a couple of XC type tests.
Note: you don't get tests for this for two reasons: one, the
interface isn't stable (I'm hoping to get feedback), but more
importantly two, the tests that I have are a derived work of a
GPL piece of software (the ansi-tests from GCL). This situation
will be rectified eventually.
Feedback welcome.
Nikodemus Siivola [Tue, 5 Dec 2006 15:46:14 +0000 (15:46 +0000)]
1.0.0.21: fix build on PPC -- breakage from XREF commit
* Less offset hardcoding in ppc-assem.S, missing xrefs "slot" in
undefined_tramp and funcallable_instance_tramp.
* Also adjust mips-assem.S and sparc-assem.S for the new simple-fun
layout: add xrefs "slot" to undefined_tramp, closure_tramp, and
funcallable_instance_tramp. UNTESTED!
* Explain what the _OFFSETs are in generated header files.
Nikodemus Siivola [Tue, 5 Dec 2006 15:27:22 +0000 (15:27 +0000)]
1.0.0.20: report address of memory faults
* This is pretty much a stopgap implementation: if memory faults
happen in multiple threads the race is on.
Nikodemus Siivola [Tue, 5 Dec 2006 15:07:15 +0000 (15:07 +0000)]
1.0.0.19: unwinding from foreign exception frames when doing
a non-local exit from alien code
* Patch and test by Alastair Bridgewater.
* Advertise our newfound stability in NEWS (since the stack-start
patch).
Juho Snellman [Tue, 5 Dec 2006 04:35:55 +0000 (04:35 +0000)]
1.0.0.18:
Add an xref facility, exported from sb-introspect.
* Support who-calls/macroexpands/binds/sets/references, with
full source path information for extra Slime-goodness.
* Only causes relatively small amounts of compilation slowdown
or fasl bloat, so enable it by default (unless (= SPEED 3)).
* Does not handle: expanded compiler-macros, code in macrolet
definition bodies, toplevel code
* Xref data is currently stored in a new simple-fun slot (the
FUN_RAW_ADDR mess has been cleaned up a little), in reverse
format (that is, we store who-is-called rather than who-calls).
* sb-introspect gets access to the simple-funs through the
infodb, so each lookup requires looping through the whole
db. This is snappy enough on my machine even with lots of
code loaded, but some other storage strategy might be
worth looking at later.
Nikodemus Siivola [Sun, 3 Dec 2006 19:53:51 +0000 (19:53 +0000)]
1.0.0.17: ENOUGH-NAMESTRING relative to #p"/"
* bug report and patch by Marco Monteiro.
* also change DESTRUCTURING-BIND to use &BODY instead of &REST for
better autoindentation support. report and patch by Matt Pillsbury.
* comment editing.
Nikodemus Siivola [Sun, 3 Dec 2006 15:24:08 +0000 (15:24 +0000)]
1.0.0.16: fix SB-POSIX:READDIR to work when built with largefile
* amusingly, the dirent type returned changes name when largefile
support is enabled.
* whitespace damage.
Nikodemus Siivola [Sun, 3 Dec 2006 14:45:51 +0000 (14:45 +0000)]
1.0.0.15: build fix & cleanup
* correct defknown for COMPILER-ERROR.
* COMPILER-ABORT doesn't exist anymore.
Nikodemus Siivola [Sun, 3 Dec 2006 13:35:51 +0000 (13:35 +0000)]
1.0.0.14: fix run-program.impure.lisp on OS X 10.4, new SB-POSIX test
* stdin and stdout are buffered if the process is not talking to
a tty, use use :PTY. (thanks to Sidney Markowitz)
* additional test using cat, which doesn't need the :PTY as cat
is apparently agressive enough about flushing the buffers.
(thanks to Nash Foster)
* additional SB-POSIX test from Stefan Lang, currently failing.
Nikodemus Siivola [Sun, 3 Dec 2006 12:02:52 +0000 (12:02 +0000)]
1.0.0.13: proper treatment of &whole and friends in ordinary lambda-lists
* It is not clear the CLHS really prohibits them from being used as variables,
but at least the error should not be a BUG. (reported by Berki Lukacs
Tamas)
Nikodemus Siivola [Sat, 2 Dec 2006 13:08:42 +0000 (13:08 +0000)]
1.0.0.12: fix docstrings.lisp to deal with unfinalized classes
* needed since with the *max-emf-precumentation-methods* change
classes like sb-bsd-socket:local-socket don't get finalized
untill the first instance is created.
Christophe Rhodes [Fri, 1 Dec 2006 20:47:04 +0000 (20:47 +0000)]
1.0.0.11:
Fix for Pascal Costanza's issue over delay/force using a method
on SLOT-UNBOUND and recursion in accessors.
... safety nets? We don't need no safety nets!
(also whitespace damage)
Juho Snellman [Fri, 1 Dec 2006 18:13:44 +0000 (18:13 +0000)]
1.0.0.10:
Set SB-PCL::*MAX-EMF-PRECOMPUTATION-METHODS* to a non-NIL value, to
fix performance problems when loading generic functions with
hundreds of methods. (Reported by Todd Sabin and Jeremy Brown)
* Use a small value, rather than 100 as used in CMUCL, to flush
out possible problems with doing a limited amount of precomputation.
Juho Snellman [Fri, 1 Dec 2006 17:23:19 +0000 (17:23 +0000)]
1.0.0.9:
Fix startup with an empty $HOME (reported by Peter Van Eynde).
Nathan Froyd [Fri, 1 Dec 2006 16:35:09 +0000 (16:35 +0000)]
1.0.0.8:
Elide array bounds checks when inlining the FIND and POSITION
family of functions.
Juho Snellman [Fri, 1 Dec 2006 16:32:13 +0000 (16:32 +0000)]
1.0.0.7:
Fix an off-by-one in the x86-64 FIXNUMP/UNSIGNED-BYTE-64 VOP (patch
from Lutz Euler).
Juho Snellman [Fri, 1 Dec 2006 16:26:22 +0000 (16:26 +0000)]
1.0.0.6:
Fix a code path that was still using the old fast-method
calling convention (reported by Pascal Costanza).
Juho Snellman [Fri, 1 Dec 2006 16:17:27 +0000 (16:17 +0000)]
1.0.0.5:
Make sb-sprof trace the call stack to an arbitrary depth on x86oids.
Nikodemus Siivola [Thu, 30 Nov 2006 17:20:54 +0000 (17:20 +0000)]
1.0.0.4: tweak windows installer builder and html-distribution.sh
* Use an appropriate base to ENOUGH-NAMESTRING in the wxs.lisp.
* Name the html tarball with -documentation-html.tar suffix.
* Add SUPPORT file to HTML tarball.
Nikodemus Siivola [Thu, 30 Nov 2006 17:03:48 +0000 (17:03 +0000)]
1.0.0.3: correct stack start addresses on Windows
* based on patch by Alastair Bridgewater.
* add AB to initials glossary and sort it by initials.
Nikodemus Siivola [Thu, 30 Nov 2006 16:20:41 +0000 (16:20 +0000)]
1.0.0.2: TRACE :ENCAPSULATE NIL, plus other minor Windows improvements
* Function end breakpoints need single-stepping awareness in
order to work -- fixes TRACE :ENCAPSULATE NIL on Windows.
* Add more exception codes to grovel-headers.c, and recognize
them in HANDLE-WIN32-EXCEPTION -- for now just signal a simple
error with the exception name as the message,
* Tweak test-suite to recognize backtrace idiosyncracies on Windows,
and skip a test that would hang due to non-working timouts.
Juho Snellman [Thu, 30 Nov 2006 15:18:56 +0000 (15:18 +0000)]
1.0.0.1:
Fix handling of non-ascii characters in *posix-argv* / *core-pathname*
(thanks to Yaroslav Kavenchuk).
William Harold Newman [Thu, 30 Nov 2006 02:36:43 +0000 (02:36 +0000)]
1.0:
release, will be tagged as sbcl_1_0
William Harold Newman [Tue, 28 Nov 2006 15:43:09 +0000 (15:43 +0000)]
0.9.18.75:
more correct handling of wide characters in debug info (merged
patch by Juho Snellman for bug reported by Attila Lendvai)
Gabor Melis [Mon, 27 Nov 2006 08:54:16 +0000 (08:54 +0000)]
0.9.18.74:
Fix hash tests on non-threaded platforms (patch for Brian Mastenbrook)
Nikodemus Siivola [Sun, 26 Nov 2006 22:16:29 +0000 (22:16 +0000)]
0.9.18.73: fix undefined function backtraces on PPC
* undefined_tramp needs to set reg_CODE, and must have an object
header. This was a regression as of 0.9.17.8. Current code adapted
from MIPS, as I don't understand how the old magic header was
supposed to work.
Nikodemus Siivola [Fri, 24 Nov 2006 10:38:49 +0000 (10:38 +0000)]
0.9.18.72: fix FreeBSD 4 build
* ...no Unix98 ptys there either. Thanks to Niimi Satoshi.
Nikodemus Siivola [Thu, 23 Nov 2006 15:11:26 +0000 (15:11 +0000)]
0.9.18.71: fix build on Darwin 7.9.0 (OS X 10.3)
* Unix98 pty api not supported here: don't add the ldso-stubs for it.
(Not needed in the presence of linkage-table anyways. After 1.0 the
conditionalization should be changed to :linkage-table.)
* ...which still leaves us with the alien definitions. They are
harmless even if the Unix98 api is not supported, as the code path
where they live is executed only if we can open /dev/ptmx. They
will, howver, cause undefined alien style-warnings on startup.
Since we presumably want to try to keep the same core working on
both older and newer Darwins, we must detect its support at
runtime.
So just muffle undefined alien style warnings from the linkage
table at startup -- presumably user-code can face similar
situations, so this is probably TRT anyways.
* Whitespace damage.
This commit message is longer then the patch.
Nikodemus Siivola [Thu, 23 Nov 2006 12:42:30 +0000 (12:42 +0000)]
0.9.18.70: fix Win32 build with version 3.8 WinAPI headers from MinGW
* Conflicting boolean types. Report and patch by Pierre Mai.
Still in freeze, damn.
Juho Snellman [Thu, 23 Nov 2006 04:00:15 +0000 (04:00 +0000)]
0.9.18.69:
Fix DISASSEMBLE after a SB-SPROF:RESET (regression since 0.9.18,
reported by Zach Beane).
Christophe Rhodes [Wed, 22 Nov 2006 22:35:28 +0000 (22:35 +0000)]
0.9.18.68:
Living dangerously...
... fix the (function-lambda-expression #'gf) problem;
... add test cases.
Juho Snellman [Wed, 22 Nov 2006 11:37:21 +0000 (11:37 +0000)]
0.9.18.67:
Fix build with gcc 2.95 (regression from 0.9.18, patch by James
Knight).
Juho Snellman [Tue, 21 Nov 2006 12:24:59 +0000 (12:24 +0000)]
0.9.18.66:
Replace the REPLACE introduced in .64 with a "Spirit of
11.1.2.1.1"-compliant CONTINUE. (This is sort of a regression,
so I'm committing it during early freeze).
Christophe Rhodes [Tue, 21 Nov 2006 10:29:09 +0000 (10:29 +0000)]
0.9.18.65:
Minimally document the FreeBSD/x86 threads.
Juho Snellman [Mon, 20 Nov 2006 10:27:59 +0000 (10:27 +0000)]
0.9.18.64:
Add a REPLACE restart for the annoying "FOO already names an ordinary
function or a macro" error for DEFGENERIC.
Juho Snellman [Mon, 20 Nov 2006 09:46:16 +0000 (09:46 +0000)]
0.9.18.63:
Fix the manual build (missed a file in a previous commit).
Cyrus Harmon [Mon, 20 Nov 2006 04:51:37 +0000 (04:51 +0000)]
0.9.18.62:
FreeBSD threads fixes, based on the patches from NIIMI Satoshi
on the sbcl-devel mailing list. This makes FreeBSD threads "work",
finally, at least experimentally.
* added lutex_trylock routine.
* fix the sb-lutex and (not wait-p) case of get-lutex.
* add pthred_mutexattr_t field to the lutex lisp object.
* use libthr (1:1 threading) instead of libpthread (m:n threading)
which supposedly doesn't work.
* use PTHREAD_MUTEX_ERRORCHECK when attribute locking mutexes
* create a dedicated cleanup thread to free threads
* put a mutex around creating threads
* use load_fs instead of the inline asm stubs
Christophe Rhodes [Sun, 19 Nov 2006 17:45:28 +0000 (17:45 +0000)]
0.9.18.61:
Callbacks for Linux/PPC, based on the patch from Joshua Ross
(joslwah sbcl-devel 2006-11-19).
... massage some of the comments into slightly better shape;
... rework the test case rather strongly.
Christophe Rhodes [Sun, 19 Nov 2006 11:26:15 +0000 (11:26 +0000)]
0.9.18.60:
Fix build on ppc/darwin (and probably also on ppc/linux)
... GNU make appears not to like the quotation marks around
the GC_SRC assignments. The symptom was a silent
stop in the build after ldso-stubs.S.
Juho Snellman [Sun, 19 Nov 2006 01:47:32 +0000 (01:47 +0000)]
0.9.18.59:
Bump fasl-file-version (at least CLOS calling convention changes).
Juho Snellman [Fri, 17 Nov 2006 02:15:47 +0000 (02:15 +0000)]
0.9.18.58:
Further SB-SPROF improvements.
* Allocation profiling on gencgc. When the profiler is running in
allocation profiling mode, the gc will signal profiler ticks
when new allocation regions are opened.
* Add :LOOP keyword argument to WITH-PROFILING, to allow specifying
whether the body should be evaluated repeatedly until the maximum
sample count is reached.
* Improve merging of code-components with multiple debug-funs,
better handling of multiple functions with the same name
* More documentation
* Also update the stepper documentation
Nathan Froyd [Thu, 16 Nov 2006 04:18:55 +0000 (04:18 +0000)]
0.9.18.57:
Add missing 'return'.
Juho Snellman [Thu, 16 Nov 2006 03:24:07 +0000 (03:24 +0000)]
0.9.18.56:
Fix SB-POSIX build on Windows (broken by largefile support). Thanks
to Yaroslav Kavenchuk.
Nathan Froyd [Wed, 15 Nov 2006 16:35:17 +0000 (16:35 +0000)]
0.9.18.55:
Fix a 32/64-bit confusion.
Nathan Froyd [Wed, 15 Nov 2006 16:31:00 +0000 (16:31 +0000)]
0.9.18.54:
Unbreak #!-linkage-table builds by adding some forgotten calls
in ldso-stubs.lisp.
Nathan Froyd [Wed, 15 Nov 2006 16:19:56 +0000 (16:19 +0000)]
0.9.18.53:
Optimize MAP and MAP-INTO with vector arguments.
* Introduce new optimization quality, INSERT-ARRAY-BOUNDS-CHECKS;
* Use it in the %MAP and MAP-INTO transforms. (We needed something
more fine-grained than (SAFETY 0), because we still want
any necessary type-checking to take place. But we know that
eliminating the bounds checks are safe.)
Nathan Froyd [Tue, 14 Nov 2006 22:15:20 +0000 (22:15 +0000)]
0.9.18.52:
If possible, use a shorter XOR instruction on x86-64 when we zero
a register.
Thiemo Seufer [Tue, 14 Nov 2006 20:23:33 +0000 (20:23 +0000)]
0.9.18.51:
Fix GC-unsafe temporary variable.
Juho Snellman [Tue, 14 Nov 2006 03:59:52 +0000 (03:59 +0000)]
0.9.18.50:
Various improvements to SB-SPROF (more speed, reliability and
usability, less consing and source code).
* Do the pc -> debug-info mapping in the signal handler, rather
than just storing the PCs and waiting until REPORT is called.
* Remove huge swathes of code for adjusting the PCs after GCs
(I don't think this had actually worked in quite a while, anyway).
This removes the slowdowns for long profiling runs.
* Show samples from assembly routines in the report, rather than
just grouping them all under "no debug information".
* Clean up SB-C::TL-XEPs etc. from function names
* Add an UNWIND-PROTECT to ensure WITH-PROFILING always stops
profiling.
* Make sigprof-handler mostly non-consing. (There's still a
few words of consing / signal handler invocation, but that happens
for all Lisp-side signal handlers).
For the last point, some core SBCL changes are also needed:
* Make a bunch of signal-context accessors inlineable to reduce
SAP to pointer conversions
* Restructure x86-call-context to always return SAPs in certain
return value positions, to allow the compiler to keep them
in registers. Rewrite recursion with a local function.
Juho Snellman [Mon, 13 Nov 2006 16:03:29 +0000 (16:03 +0000)]
0.9.18.49:
Fix Linux/x86 build after a clean.sh.
* Write the target features to genesis/Makefile.features, included
into other makefiles.
* Remove the disgusting shell/grep tricks for feature-based
conditionalizing in Makefiles
Juho Snellman [Mon, 13 Nov 2006 07:20:20 +0000 (07:20 +0000)]
0.9.18.48:
Make calling methods with &OPTIONALs or &KEYs faster and non-consing.
* Change fast method functions to use the normal Lisp argument
passing convention, rather than the CLOS-style "required arguments
as normal Lisp arguments, non-required ones passed as one
list" convention.
* Don't do argument parsing manually in the FMFs generated by
MAKE-METHOD-INITARGS-FORM-INTERNAL1
* Use &MORE instead of &REST in DFUN lambda lists.
* Clean up the lambda-list generation mess in cache.lisp / dlisp.lisp
Juho Snellman [Mon, 13 Nov 2006 06:10:15 +0000 (06:10 +0000)]
0.9.18.47:
Faster &MORE-handling VOPs on x86 and x86-64.
* The performance of LOOP is really bad on modern x86, rewrite
the loops in %LISTIFY-REST-ARGS and %MORE-ARG-VALUES to do
the index manipulation and branching explicitly.
* REP MOVS isn't very good for copying small blocks of memory, use
an explicit loop in COPY-MORE-ARG.
* Rewrite the x86-64 COPY-MORE-ARG to take advantage of the extra
registers.
* Implement %MORE-ARG (exists on all other platforms).
Juho Snellman [Sun, 12 Nov 2006 23:04:57 +0000 (23:04 +0000)]
0.9.18.46:
Support files >2GB on Linux/x86.
* Compile the runtime (and the C type grovelers) with various flags
to enable a 64-bit off_t.
* Add C-side wrappers for various POSIX functions, so that we can
reliably get the largefile versions of them from Lisp-side.
Rudi Schlatte [Sun, 12 Nov 2006 21:42:27 +0000 (21:42 +0000)]
0.9.18.45
"Patch to update Japanese external formats" (NIIMI Satoshi, 2006-11-10)
* New external format: Shift-JIS
Christophe Rhodes [Sun, 12 Nov 2006 09:20:19 +0000 (09:20 +0000)]
0.9.18.44:
Patch from Zach Beane for sb-posix support for time, utime and
utimes.
Juho Snellman [Thu, 9 Nov 2006 21:30:20 +0000 (21:30 +0000)]
0.9.18.43:
Signal an error for attempts to displace an array to an array with
a different element type (patch by Mario Mommer).
Also mark a couple of float tests as passing on FreeBSD (patch
by NIIMI Satoshi).
Juho Snellman [Thu, 9 Nov 2006 20:34:30 +0000 (20:34 +0000)]
0.9.18.42:
TRANSLATE-PATHNAME was selecting the version component from
FROM-WILDCARD rather than SOURCE. (Reported by Josip Gracin,
apparently causing trouble for cl-darcs).
Nikodemus Siivola [Wed, 8 Nov 2006 06:18:57 +0000 (06:18 +0000)]
0.9.18.41: add Nikodemus Siivola / Steel Bank Studio Ltd to SUPPORT
Christophe Rhodes [Tue, 7 Nov 2006 11:04:38 +0000 (11:04 +0000)]
0.9.18.40:
Update the manual's description of threading to reflect
currently supported platforms.