William Harold Newman [Tue, 27 Mar 2007 16:20:38 +0000 (16:20 +0000)]
1.0.4.6:
rewrote RANDOM for INTEGER case to eliminate (small) bias
Alas, it doesn't seem practical to test this properly. (Difficulty
of building a nice test suite seems to be a pervasive
problem for randomized code.) I could write a test case
narrowly targeted to detect the old bug, but I don't
think I could make even that single test simultaneously
fast enough and reliable enough that it would be
a good candidate for run-tests.sh. And aiming at a
more comprehensive set of tests just makes the
making-it-fast-enough problem that much harder.
Rudi Schlatte [Tue, 27 Mar 2007 05:58:07 +0000 (05:58 +0000)]
1.0.4.5 slot reader/writer documentation in the manual
* Also remove writers for sb-bsd-sockets:host-ent class slots
* Thanks to Richard M Kreuter
Gabor Melis [Mon, 26 Mar 2007 15:30:02 +0000 (15:30 +0000)]
1.0.4.4: simplify JOIN-THREAD interface
Nikodemus Siivola [Mon, 26 Mar 2007 10:30:21 +0000 (10:30 +0000)]
1.0.4.3: interrupt and GC issues
* Add WITHOUT-INTERRUPTS to WITHOUT-GCING.
* Warn if WITH-INTERRUPTS nested in WITHOUT-GCING.
* Make sure that SIG_STOP_FOR_GC and SIG_RESUME_FROM_GC are enabled on
threaded builds before calling into SUB-GC from the runtime.
* Better WITHOUT-GCING, WITHOUT-INTERRUPTS, and WITH-INTERRUPTS
documentation.
* Internals documentation about POSIX signal safety rules.
Cyrus Harmon [Mon, 26 Mar 2007 02:23:05 +0000 (02:23 +0000)]
1.0.4.2: really commit darwin sb-posix fixes
* see commit log message for 1.0.4.1. the sb-posix files didn't get
properly committed.
* in short, revert sb-posix st_atime, st_mtime, and st_ctime behavior
to the way it was before I tried to fix things for the
x86-64/darwin port.
Cyrus Harmon [Mon, 26 Mar 2007 00:57:09 +0000 (00:57 +0000)]
1.0.4.1: fix sb-posix atime/mtime/ctime
* st_atime, st_mtime and st_ctime were broken in a perhaps misguided
attempt to fix these for x86-64 by exposing the timespec struct
instead of just passing the first time_t (which is really the
tv_sec field of the struct) as the return value. This patch
restores the previous behavior. This may cause a regression for
x86_64/darwin, but we should find a better fix. We should also
consider removing the wrapped_stat bit and the corresponding C code
wrapper.
William Harold Newman [Sun, 25 Mar 2007 16:39:54 +0000 (16:39 +0000)]
1.0.4: release, will be tagged as sbcl_1_0_4
Gabor Melis [Fri, 23 Mar 2007 16:09:49 +0000 (16:09 +0000)]
1.0.3.48: mark JOIN-THREAD as experimental
Gabor Melis [Wed, 21 Mar 2007 08:26:19 +0000 (08:26 +0000)]
1.0.3.47: fixed threads tests
lisphacker [Sun, 18 Mar 2007 23:46:07 +0000 (23:46 +0000)]
1.0.3.46: De-pessimized x86 sub-byte DATA-VECTOR-SET/* VOPs.
Reduced register usage requirements by one (much needed) register.
Gabor Melis [Sun, 18 Mar 2007 19:30:25 +0000 (19:30 +0000)]
1.0.3.45: added JOIN-THREAD
Implementation by NIIMI Satoshi. Added more docstrings and changed the
interface according to the styling advice of Thomas F. Burdick.
Cyrus Harmon [Sun, 18 Mar 2007 17:36:55 +0000 (17:36 +0000)]
1.0.3.44: x86-64 print vop preserves 16-byte stack alignment
* rework the x86-64 print (really should be debug-print or some such)
to preserve 16-byte stack alignment. This was breaking
x86-64/darwin sb-show builds.
Andreas Fuchs [Sun, 18 Mar 2007 01:57:45 +0000 (01:57 +0000)]
1.0.3.43: Restore manual autobuildability
Adding a dependency of ../../output/sbcl.core in the manual's Makefile goes
against the ability of specifying the SBCL_SYSTEM to the build process. This
change should restore the old behavior.
Nikodemus Siivola [Sun, 18 Mar 2007 00:06:52 +0000 (00:06 +0000)]
1.0.3.42: two LOOP buglets
* Avoid bogus package-lock violations from LOOP, don't declare types
for special variables in COMMON-LISP. Reported by Eric Marsen on
sbcl-devel.
* Avoid attempts to coerce loop variable initialization values to
range-limited types. Reported by Andras Simon on sbcl-devel.
Nathan Froyd [Sat, 17 Mar 2007 21:24:59 +0000 (21:24 +0000)]
1.0.3.41:
Use a local variable for %%CURRENT-{VOP,SEGMENT}%% rather than a
dynamic variable; eliminates spurious BOUNDP checks and
generates smaller code for VOP emitters. Saves ~170k on core
size on x86-64/linux.
Juho Snellman [Fri, 16 Mar 2007 03:57:08 +0000 (03:57 +0000)]
1.0.3.40: :EXECUTABLE T implies --noinform
* Patch from Kevin Reid.
* Not the right solution. This can be revisited once somebody
implements the mythical saving of command-line parameters into the
core.
* Also check in some fixes to the build process of the manual (patch
by Richard Kreuter).
Cyrus Harmon [Thu, 15 Mar 2007 15:14:15 +0000 (15:14 +0000)]
1.0.3.39: larger heap size for x86-64/darwin
* removed darwin specific params for space locations.
* modify gettimeofday of call on darwin x86-64 to not pass in a
timezone pointer as this causes the gettimeofday syscall to
occasionally fail. This is a temporary hack and should be fixed.
Nikodemus Siivola [Mon, 12 Mar 2007 12:04:14 +0000 (12:04 +0000)]
1.0.3.38: record bug #411, disable NAN-COMPARISONS test on x86-64
...avaiting the attention of x86-64 hackers...
Juho Snellman [Thu, 8 Mar 2007 18:09:32 +0000 (18:09 +0000)]
1.0.3.37: Oops, fix bad argument types in the new x86-64 modular arithmetic VOPs
sa2c [Thu, 8 Mar 2007 11:12:21 +0000 (11:12 +0000)]
1.0.3.36: Don't fail on timeout on contrib/sb-simple-streams tests.
Timeout may occur on the restricted systems (e.g. FreeBSD with
jail(8) or blackhole(4) is used) when connecting to even localhost.
Juho Snellman [Wed, 7 Mar 2007 05:20:27 +0000 (05:20 +0000)]
1.0.3.35: fix problem with backtraces showing NIL as the function name
* Reported by Edi Weitz
* Might also fix the debug.impure failures that some people have
reported on BSDs
Nathan Froyd [Wed, 7 Mar 2007 02:12:56 +0000 (02:12 +0000)]
1.0.3.34:
Make (SETF C-STRING->LISP-STRING) substantially faster and cons less.
Cyrus Harmon [Tue, 6 Mar 2007 23:26:32 +0000 (23:26 +0000)]
1.0.3.33: sb-bsd-sockets fixes for x86-64/darwin
* add gethostbyname2 (#+darwin)
* make ai_addrlen be a socklen_t (#+darwin)
* turn off :sb-bsd-sockets-addrinfo on x86-64/darwin as this seems
to be broken
* workaround gethostbyname length bug by alllowing length 4 or 8
on x86-64 darwin
Cyrus Harmon [Tue, 6 Mar 2007 18:29:54 +0000 (18:29 +0000)]
1.0.3.32: make-local-alien stack alignment simplification
* treat x86-64/darwin stack like x86-64/linux rather than x86/darwin
* remove stack-pointer saving vops as we don't need to save and
restore the stack in order to preserve 16-byte alignment as the
stack should already be 16-byte aligned
Nikodemus Siivola [Mon, 5 Mar 2007 16:58:26 +0000 (16:58 +0000)]
1.0.3.31: fix new = and /= transformations for NaNs
* (= nan nan) is false, and (/= nan nan) is true, as pointed out by
CSR.
* More tests.
Juho Snellman [Mon, 5 Mar 2007 00:57:52 +0000 (00:57 +0000)]
1.0.3.30: More compact typechecks on x86-64
* Patch by Lutz Euler
Juho Snellman [Sun, 4 Mar 2007 23:52:39 +0000 (23:52 +0000)]
1.0.3.29: kill a bogus "variable defined but not used" warning in FORMATTER
Juho Snellman [Sun, 4 Mar 2007 23:47:58 +0000 (23:47 +0000)]
1.0.3.28: handle output for fatal-compiler-errors more consistently
* Format the output like it's done for other errors / warnings
* Output to *error-output*
* Output unconditionally regardless of the value of *compiler-verbose*
Juho Snellman [Sun, 4 Mar 2007 23:42:32 +0000 (23:42 +0000)]
1.0.3.27: disable test for get-host-by-name for non-existing hosts
* Many people have DNS setups where this test will always fail.
Juho Snellman [Sun, 4 Mar 2007 23:39:34 +0000 (23:39 +0000)]
1.0.3.26: port modular-xor/fixnum changes from x86 to x86-64
* Code like (logand most-positive-fixnum (logxor (the fixnum x)
(the fixnum y))
would end up with a full call to SB-VM::LOGXOR-MOD64.
Cyrus Harmon [Sat, 3 Mar 2007 20:53:15 +0000 (20:53 +0000)]
1.0.3.25: freebsd sb-bsd-sockets fixes
* SO_NO_CHECK doesn't exist on freebsd. Make this #-freebsd.
* EAI-ADDRFAMILY and EAI-NODATA are deprecated and don't exist on
freebsd. Make these #-freebsd.
Cyrus Harmon [Sat, 3 Mar 2007 20:19:26 +0000 (20:19 +0000)]
1.0.3.24: remove win32 alien-timeval
* remove alien-timeval struct defintion
* make define-protocol-class timeval be #-win32
Cyrus Harmon [Sat, 3 Mar 2007 18:58:48 +0000 (18:58 +0000)]
1.0.3.23: fix sb-posix timeval struct
* add timeval struct for #+win32 and use long instead of suseconds_t
Cyrus Harmon [Sat, 3 Mar 2007 18:28:43 +0000 (18:28 +0000)]
1.0.3.22: fix with-pinned-object buglets
* on ppc types and variables were unused, which was causing a warning
which was getting promoted to an error. make them ignorable.
* #+(or x86 x86-64) -> #!+(or x86 x86-64) which should help building
from non sbcl hosts.
* also fix indentation in timeval struct definition
Cyrus Harmon [Sat, 3 Mar 2007 17:52:46 +0000 (17:52 +0000)]
1.0.3.21: suseconds_t -> long on win32
* suseconds_t doesn't exist on win32, so use long instead
Nikodemus Siivola [Sat, 3 Mar 2007 17:21:58 +0000 (17:21 +0000)]
1.0.3.20: better SEARCH transform
* Better type declarations for index variables -- fixes the
performance regression in BENCH-STRINGS from the NaN-comparison
changes.
* Extend the transform to work with general vectors, arbitrary :TEST and
:KEY, and constant but arbitrary :FROM-END.
* Tests.
Nikodemus Siivola [Sat, 3 Mar 2007 10:49:26 +0000 (10:49 +0000)]
1.0.3.19: the count argument in DOTIMES is known to be an integer
* Declaring it as such for the non-constant expansion of dotimes
allows the inversion of >= to < kick in for the termination test.
sa2c [Sat, 3 Mar 2007 07:19:36 +0000 (07:19 +0000)]
1.0.3.18: Fix build on FreeBSD/amd64
Cyrus Harmon [Sat, 3 Mar 2007 06:24:38 +0000 (06:24 +0000)]
1.0.3.17: fix x86-64-assem.S build
* on darwin, use GSYM(GNAME(all_threads)),%rax, on linux use
GNAME(all_threads). This is isn't the cleanest fix, but it should
restore buildability while I work out a proper fix.
Cyrus Harmon [Sat, 3 Mar 2007 00:42:01 +0000 (00:42 +0000)]
1.0.3.16: experimental x86-64/darwin suport
* fix sb-posix time structs to match headers on darwin
* comment out mtime sb-posix test as this isn't working ATM
* add UD2A trap stuff to x86-64 and corresponding word-imm support
* remove bogus extern-alien-name in boxed_region fixups
* add compiler parameters for Darwin
* add x86-64 darwin config file
* some type safety fixes (proper types) in darwin-dlshim.c
* use setpgid on Darwin
* add signal context support x86-64/darwin
* report trap instead of si_code for trap_Error/trap_Cerror
* unsigned -> unsigned long in purify.c
* add mach exception handler support for x86-64/darwin
* x86-64 assembly hacks to make darwin's assembler happy
* update x86-64-bsd-os.c to suppot darwin and mach exceptions
* add x86-64-darwin-os.c/h
* update LDSO stubs for x86-64 darwin
Cyrus Harmon [Fri, 2 Mar 2007 22:43:43 +0000 (22:43 +0000)]
1.0.3.15: timeval tv-usec should be suseconds-t not time-t
* add suseconds-t to grovel-headers
* fix timeval struct such that tv-usec is a suseconds-t instead of time-t
* fix whitespace
Cyrus Harmon [Fri, 2 Mar 2007 17:52:55 +0000 (17:52 +0000)]
1.0.3.14: fix print_obj on x86-64
* debugging code in print_obj was hardcoded to use 3-bit lowtags.
Now it's hardcoded to use appropriate 4-bit lowtags on x86-64.
* Added a fixme about how this should be fixed properly at some point.
Nikodemus Siivola [Fri, 2 Mar 2007 17:03:09 +0000 (17:03 +0000)]
1.0.3.13: working NaN comparison tests outside Darwin
* Other platforms have invalid operation traps normally in effect.
Juho Snellman [Fri, 2 Mar 2007 06:08:37 +0000 (06:08 +0000)]
1.0.3.13: "Oops"
Juho Snellman [Fri, 2 Mar 2007 05:05:32 +0000 (05:05 +0000)]
1.0.3.12: Use the interpreter when creating functions for undeclared aliens
* No sense in invoking the compiler, since the functions will
just be discarded after one use.
* Undeclared aliens should no longer be hideously expensive
Juho Snellman [Fri, 2 Mar 2007 04:35:58 +0000 (04:35 +0000)]
1.0.3.11: Fix deportation gc safety bug
* Pin objects that are deported by taking a SAP to a GCd object
* In some cases the object that the SAP is taken to isn't actually
EQ to the one that was deported -> split deportation into
separate alien-type-class-methods for the allocation and the
actual deportation.
* Don't do pinning on non-x86oids, since we can't really disable
the GC during all alien calls.
Juho Snellman [Fri, 2 Mar 2007 03:16:31 +0000 (03:16 +0000)]
1.0.3.10: Add -D_REENTRANT to Solaris CFLAGS
* Otherwise localtime_r in time.c won't be found.
* Problem and solution reported by Thomas Burdick.
Juho Snellman [Fri, 2 Mar 2007 02:02:01 +0000 (02:02 +0000)]
1.0.3.9: Allow characters as string designators for SHADOW
* Patch by Eric Marsden
Juho Snellman [Fri, 2 Mar 2007 01:37:08 +0000 (01:37 +0000)]
1.0.3.8: Use an explicit :initial-element 0 when making sset storage vectors
* Would cause build failures with clisp and abcl
* Patch by Peter Graves
Juho Snellman [Fri, 2 Mar 2007 01:33:13 +0000 (01:33 +0000)]
1.0.3.7: Compile XEPs using the policy from the correct environment
* Didn't matter before the fop-compiler function handling changes.
Juho Snellman [Fri, 2 Mar 2007 00:59:07 +0000 (00:59 +0000)]
1.0.3.6: Make sb-bsd-sockets use getaddrinfo/getnameinfo where available
* Generally thread-safe functions (though not on OS X) unlike
gethostbyaddr/gethostbyname.
* The interfaces are not totally compatible (e.g. no aliases data
available, different error codes, etc). Try to make this change as
transparent as possible.
* Clean up old CMUCL compability cruft
* Delete the obsolete documentation generator
* Add a little extra documentation on the name-service to the manual
Christophe Rhodes [Wed, 28 Feb 2007 16:05:57 +0000 (16:05 +0000)]
1.0.3.5: slightly different SEQUENCE type handling.
The UNION TYPE= issue affects type derivation as in
(defun foo (x)
(declare (type (simple-array character) x))
(subseq x 1 2))
where the system fails to derive that the intersection of
consed-sequence and (simple-array character) is distinct from
consed-sequence. Change SEQUENCE to be an explicit union of
LIST, VECTOR and an EXTENDED-SEQUENCE named type, defining
appropriate type methods, and the symptom (but not the cause)
goes away.
(Note: it may well be that the EXTENDED-SEQUENCE named type
disappears again, to be replaced by an actual protocol class
similar to FUNDAMENTAL-STREAM for Gray streams, for reasons of
future extensibility and ease of compatibility with other Lisps.
Waiting for ILC feedback...)
Andreas Fuchs [Wed, 28 Feb 2007 13:01:58 +0000 (13:01 +0000)]
1.0.3.4: make-target-2.lisp split into compile and dump phases.
* Split make-target-2.lisp into make-target-2.lisp and
make-target-2-load.lisp, reducing unnecessary state that was kept around.
Not keeping symbols that were interned during the compilation of PCL
saves us 400kB on x86 and between 1MB and 1.5MB on x86_86.
* Unintern symbols that are internal to CL-USER before dumping the core.
This doesn't save any space; just removes confusion.
Christophe Rhodes [Wed, 28 Feb 2007 12:56:26 +0000 (12:56 +0000)]
1.0.3.3:
Make the #=/## reader macro work on funcallable instances.
William Harold Newman [Tue, 27 Feb 2007 23:25:38 +0000 (23:25 +0000)]
1.0.2:
logged bug
Nikodemus Siivola [Tue, 27 Feb 2007 21:57:12 +0000 (21:57 +0000)]
1.0.3.1: fix behaviour of >= and <= with NaNs
* Problem: (>= (/ 0.0 0.0) 1.0) evaluates to true.
Move inversion from >= to < and from <= to > from the source
transformations to new deftransforms, and make it conditional on
the derived type, avoiding the inversion for potential floats.
This fixes the NaN issues with >= and <=, but exposes gaps in our
transformations for =, causing a constraint propagation test to
fail...
* Tweak the deftransform for = so that another transformation can
co-exist with it.
Write INTERVAL-= and INTERVAL-/=, and deftransforms for = and /=
based on them.
This fixes the constant propagation issue, except for the bug it
exposes elsewhere...
* INTERVAL-INTERSECTION/DIFFERENCE returns bogus intersections -- fix
it.
...and all is well.
* Tests.
* NUMERIC-TYPE-OR-LOSE is unused, deleted.
* Also fix tests/stream.impure.lisp for UTF-8 environments.
William Harold Newman [Tue, 27 Feb 2007 20:03:42 +0000 (20:03 +0000)]
1.0.3:
release, will be tagged as sbcl_1_0_3
William Harold Newman [Thu, 22 Feb 2007 20:14:13 +0000 (20:14 +0000)]
1.0.2.27:
fixed thinko in man page (thanks to Trent Buck and Zach Beane)
Nikodemus Siivola [Mon, 19 Feb 2007 11:55:51 +0000 (11:55 +0000)]
1.0.2.26: replace *all-components* special with a local variable
* Was used only in COMPILE-TOPLEVEL where it was also bound.
Juho Snellman [Tue, 13 Feb 2007 07:40:38 +0000 (07:40 +0000)]
1.0.2.25: Better MUFFLE-CONDITIONS handling for inlined functions
* Inherit MUFFLE-CONDITIONS from the call-site
lexenv. Otherwise it's basically impossible to selectively
muffle "alien runtime allocation" notes, at least for
SB-GROVELed alien functions.
Juho Snellman [Mon, 12 Feb 2007 03:43:11 +0000 (03:43 +0000)]
1.0.2.24: Support readlink in SB-POSIX
* Thanks to Richard M Kreuter
Juho Snellman [Mon, 12 Feb 2007 03:20:39 +0000 (03:20 +0000)]
1.0.2.23: Clean up handling SB-POSIX functions with runtime wrappers
* Thanks to Richard M Kreuter
Juho Snellman [Mon, 12 Feb 2007 03:12:40 +0000 (03:12 +0000)]
1.0.2.22: Minor NetBSD changes
* Use gtar as the tar in asdf-install (thanks to Jon Buller)
* Fix bashism in make-target-contrib.sh (thanks to Magnus Henoch)
Nathan Froyd [Wed, 7 Feb 2007 19:12:42 +0000 (19:12 +0000)]
1.0.2.21:
Make ASH VOPs use 'LEA <reg>, [<reg>+<reg>]' instead of
'LEA <reg>, [<reg>*2]' on x86 and x86-64, resulting in
shorter code.
Nathan Froyd [Wed, 7 Feb 2007 18:35:54 +0000 (18:35 +0000)]
1.0.2.20:
Fix parenthetical typo.
Juho Snellman [Tue, 6 Feb 2007 18:24:55 +0000 (18:24 +0000)]
1.0.2.19: Fix fopcompiling references to undefined variables
* While undefined, this should be handled the same way in the compiler
and the fopcompiler
* Signal a warning, use the symbol-value of the slot
* Reported by Gregory Vanuxem on sbcl-devel
Christophe Rhodes [Tue, 6 Feb 2007 15:51:14 +0000 (15:51 +0000)]
1.0.2.18:
Whoops. Add the new files for the PPC/NetBSD port, from
Aymeric Vincent.
Juho Snellman [Tue, 6 Feb 2007 08:11:17 +0000 (08:11 +0000)]
1.0.2.17: Bypass the hairy AREF transform for simple arrays
* To improve compilation speed for array-heavy code
Juho Snellman [Tue, 6 Feb 2007 06:12:07 +0000 (06:12 +0000)]
1.0.2.16: Replace SVREF with DATA-VECTOR-REF in %INSTANCE-TYPEP deftransform
* Since the SVREF is compiled with SAFETY 0, it'd eventually get
transformed to exactly the same thing, but going through several
heavy intermediate stages.
* Big compilation speed improvement for code that uses structs.
Juho Snellman [Tue, 6 Feb 2007 05:51:30 +0000 (05:51 +0000)]
1.0.2.15: Cache the results of BLOCK-PHYSENV during lifetime analysis
* Fetching the home-lambda of a block (needed in
BLOCK-PHYSENV) can be an expensive operation under some
circumstances, and it needs to be done a lot during lifetime
analysis when compiling with high DEBUG (e.g. 30% of the
total compilation time for CL-PPCRE with DEBUG 3 just for
that).
Juho Snellman [Tue, 6 Feb 2007 05:24:13 +0000 (05:24 +0000)]
1.0.2.14: Speed up constraint propagation
* Rewrite ADD-EQL-VAR-VAR-CONSTRAINT to do a constant number of
passes over the constraint set, rather than an amount proportional
to the amount of EQL constraints on the variables in question.
* Use SSET-MEMBER directly in CONSTRAIN-REF-TYPE, rather than
a COPY-SSET and SSET-INTERSECTION.
Juho Snellman [Tue, 6 Feb 2007 05:06:37 +0000 (05:06 +0000)]
1.0.2.13: Use an sset for LAMBDA-CALLS-OR-CLOSES
* Used to be an unsorted list (often long) and PUSHNEW / NUNION
Juho Snellman [Tue, 6 Feb 2007 04:48:36 +0000 (04:48 +0000)]
1.0.2.12: New hash-based implementation of ssets
* The old version that used sorted lists had bad worst case performance,
which was especially noticeable with constraint propagation on
hairy functions.
* Use yet another custom hash implementation (with open addressing
and double hashing), since the standard hash-tables are too heavy
for this (e.g. locking overhead, memory consumption).
* An sset implementation based on balanced trees was also tested,
but in practice turned out to be even slower than the sorted lists,
due to the high
* DO-SSET-ELEMENTS no longer iterates in SSET-ELEMENT-NUMBER order,
but we don't seem to rely on the old behaviour anywhere.
Christophe Rhodes [Mon, 5 Feb 2007 07:23:40 +0000 (07:23 +0000)]
1.0.2.11:
NetBSD/PPC support (from Aymeric Vincent sbcl-devel 2007-01-18).
Nathan Froyd [Mon, 5 Feb 2007 03:58:32 +0000 (03:58 +0000)]
1.0.2.10:
Delete a pile of unused bignum code.
Nathan Froyd [Mon, 5 Feb 2007 03:47:01 +0000 (03:47 +0000)]
1.0.2.9:
Micro-optimizations to the bignum code: use LOGTEST and LOGBITP
where appropriate.
Christophe Rhodes [Sun, 4 Feb 2007 16:26:47 +0000 (16:26 +0000)]
1.0.2.8:
Two slightly improved comments relating to the extensible
sequences checked in in the 1.0.0 series.
Cyrus Harmon [Fri, 2 Feb 2007 19:26:23 +0000 (19:26 +0000)]
1.0.2.7: Darwin/MacOS threading improvements
* use LOCK_CREATE_THREAD on MacOS/Darwin too
* add new mach_exception_lock and grab this lock when handling
exceptions
* fix signal mask restoring logic (I think...)
* restore float state in addition to thread state when done
handling an emulated signal
Nathan Froyd [Mon, 29 Jan 2007 21:24:11 +0000 (21:24 +0000)]
1.0.2.6:
*sigh* Fix #+sb-unicode builds.
Nathan Froyd [Mon, 29 Jan 2007 20:38:40 +0000 (20:38 +0000)]
1.0.2.5:
Fix DATA-VECTOR-{REF,SET}-WITH-OFFSET for #-sb-unicode builds.
Nathan Froyd [Mon, 29 Jan 2007 18:30:24 +0000 (18:30 +0000)]
1.0.2.4: Improve inlined array heap allocation on x86.
...allow IMMEDIATE SCs to ALLOCATE-VECTOR-ON-HEAP;
...use shorter instructions to set the widetag.
Cuts a couple of pages off of sbcl.core.
Nathan Froyd [Sun, 28 Jan 2007 19:58:54 +0000 (19:58 +0000)]
1.0.1.3:
Fix two buglets in MAKE-EA-FOR-FLOAT-REF.
Nathan Froyd [Sat, 27 Jan 2007 03:57:20 +0000 (03:57 +0000)]
1.0.2.2:
Delete a few spurious debugging FORMATs.
Nathan Froyd [Sat, 27 Jan 2007 03:45:45 +0000 (03:45 +0000)]
1.0.2.1: DATA-VECTOR-{REF,SET}-WITH-OFFSET for the x86
Compile calls of (AREF FOO (+ INDEX <constant>) more efficiently:
... turn DATA-VECTOR-{REF,SET} into
DATA-VECTOR-{REF,SET}-WITH-OFFSET when the element type of FOO
is at least 8 bits wide;
... introduce general mechanism for optimization of such calls;
... redo the x86 DATA-VECTOR-FOO VOPs, reducing the number of such
VOPs in the process;
... do the same for BIGNUM-REF and SAP-REF-FOO.
Upshot: 5-10% increase in performance on array-heavy code such
as Ironclad; a 20% increase in performance has been observed
on cellular automata codes. Some restrictions apply; see the
KLUDGE in src/compiler/generic/vm-tran for an example.
William Harold Newman [Thu, 25 Jan 2007 15:51:34 +0000 (15:51 +0000)]
1.0.2:
release, will be tagged as sbcl_1_0_2
Gabor Melis [Tue, 23 Jan 2007 16:04:53 +0000 (16:04 +0000)]
1.0.1.35: propagate (EQL X Y) constraints symmetrically
After an (EQL X Y) test both X and Y shall inherit the constraints
of the other. Thanks to jsnell for spotting this.
sa2c [Sun, 21 Jan 2007 03:48:23 +0000 (03:48 +0000)]
1.0.1.34: quote fix for old cpp
fix build with gcc 2.95.
Juho Snellman [Fri, 19 Jan 2007 01:55:46 +0000 (01:55 +0000)]
1.0.1.33: Better forward reference handling in WITH-COMPILATION-UNIT ...
* ... for the case where a forward reference is made during
compilation, and the referenced function is loaded from a
pre-existing fasl while still inside the same compilation unit.
(Reported by Jeremy Brown).
* Tests.
Juho Snellman [Fri, 19 Jan 2007 00:07:26 +0000 (00:07 +0000)]
1.0.1.32: More syscall wrappers on NetBSD, to work around C preprocessor abuse
* socket, dirent (patch from Richard Kreuter)
Juho Snellman [Thu, 18 Jan 2007 00:32:04 +0000 (00:32 +0000)]
1.0.1.31: Speed up fopcompilation of functions
* Get rid of the extra wrapper lambda around fopcompiled functions
* This requires making sure that functions with xeps are never
let- or assignment-converted.
* Fix some whitespace damage, and a few tests that were making
invalid assumptions
* Compilation speedup seems to be about 5% for most cases, up to
20% on high debug levels.
Juho Snellman [Wed, 17 Jan 2007 12:40:54 +0000 (12:40 +0000)]
1.0.1.30: Fix READ/WRITE-SEQUENCE on simple-vectors
Broken by the recent bivalent stream fix.
* Arbitrarily decide that READ-SEQUENCE into a simple-vector
from a bivalent stream should read character data
* More tests
Juho Snellman [Mon, 15 Jan 2007 23:23:14 +0000 (23:23 +0000)]
1.0.1.29: Documentation strings for autogenerated accessors
When generating CLOS accessors, use the :documentation of the
slot for the docstring of the method (Patch by Troels
Henriksen)
Juho Snellman [Mon, 15 Jan 2007 22:15:48 +0000 (22:15 +0000)]
1.0.1.28: Fix SBCL on PPC with 65k pages.
It turns out that getpagesize() can return different values on
different Linux kernel versions, for example on PPC where the
ABI specifies the page size as 4k-65k. If getpagesize() and
SB!C:*BACKEND-PAGE-SIZE* disagree, the result will be a segfault
at startup. Fix this. (Thanks to David Woodhouse).
* SB!SYS:GET-PAGE-SIZE and os_vm_page_size use the hardcoded
SB!C:*BACKEND-PAGE-SIZE* on Linux, since getpagesize() is unreliable.
* Remove the obsolete LISPOBJ() kludge in genesis for forcing values to
unsigned.
* Fix buffer overflow in coreparse for sufficiently small page tables.
* Allow using 65k or gencgc pages (with a slightly less efficient
page table structure layout).
Juho Snellman [Mon, 15 Jan 2007 22:09:10 +0000 (22:09 +0000)]
1.0.1.27: Add syslog(3) and friends to SB-POSIX.
* Patch by Richard Kreuter
Juho Snellman [Mon, 15 Jan 2007 21:24:04 +0000 (21:24 +0000)]
1.0.1.26:
Fix bug in the win32 ATANH implementation (patch by Pierre Mai)
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.