Teemu Kalvas [Mon, 14 Aug 2006 13:57:27 +0000 (13:57 +0000)]
0.9.15.31: RUN-PROGRAM win32 patch
* Fixed input, output and error redirection in RUN-PROGRAM for win32.
William Harold Newman [Mon, 14 Aug 2006 13:07:50 +0000 (13:07 +0000)]
0.9.15.30:
incremented +FASL-FILE-VERSION+
Christophe Rhodes [Mon, 14 Aug 2006 09:21:57 +0000 (09:21 +0000)]
0.9.15.29:
Before I forget: since working on a %method-function branch to
fix the :function / :fast-function initarg to methods has
uncovered some related-but-fixable bugs, do an early merge to
clear them up:
... the special declaration for pv-table-symbol was in the
wrong place, so spurious warnings were generated;
... make-emf-from-method can return a method-call (not a
fast-method-call), so fix cases where both the
caller and callee of a MAKE-METHOD form were
non-standard.
... remove an ancient workaround for a KCL bug related to
pv-table-symbol.
Nikodemus Siivola [Sat, 12 Aug 2006 09:55:13 +0000 (09:55 +0000)]
0.9.15.28: less instrumentation
* Don't instrument inline-expansions of known functions. Fixes at
least some of the "step-instrumentation confusing the compiler"
problems.
* Rename IR1-CONVERT-LAMBDA-FOR-DEFUN to
IR1-CONVERT-INLINE-EXPANSION, since that is the only way it is
currently used. Refactor slightly for simplicity, given the way it
is actually used.
* Test-case.
Nikodemus Siivola [Fri, 11 Aug 2006 13:37:18 +0000 (13:37 +0000)]
0.9.15.27: compiler-macro expansion for FUNCALL forms & bugfixes
* Refactor the compiler to first consider special forms and
compiler-macro expansions before other options. (Necessary for the
rest.)
* FUNCALL forms now get compiler-macro expansion when applicable.
* COMPILER-MACRO-FUNCTION takes shadowing by local functions into
account.
* Local INLINE declarations no longer inhibit compiler-macro
expansion.
* Tests.
Nikodemus Siivola [Fri, 11 Aug 2006 08:08:39 +0000 (08:08 +0000)]
0.9.15.26: compiler-macro lambda-list parsing and FUNCALL forms
* We previously handled only the &WHOLE case, and also failed to
handle the argument count checking correct. Now things should work,
but FUNCALL forms are not still subject to compiler-macroexpansion -- yet.
(Reported by James Y Knight)
* Refactor the macro-lambda-list parsing code slightly for easier
comprehension.
Nikodemus Siivola [Thu, 10 Aug 2006 12:48:45 +0000 (12:48 +0000)]
0.9.15.25: COMPILE-FILE-PATHNAME when output-file doesn't have a type
* Bug reported by Robert Dodier.
Christophe Rhodes [Thu, 10 Aug 2006 11:24:03 +0000 (11:24 +0000)]
0.9.15.24:
Cosmetic change
... s/pcl-funcallable-instance/standard-funcallable-instance/
(where by "STANDARD" we begin to mean CLOS/AMOP-compatible)
Nikodemus Siivola [Thu, 10 Aug 2006 11:17:27 +0000 (11:17 +0000)]
0.9.15.23: finding defintions of profiled functions
* Patch by Troels Henriksen.
* Test-case missing from 0.9.15.22.
Nikodemus Siivola [Thu, 10 Aug 2006 10:18:50 +0000 (10:18 +0000)]
0.9.15.22: check for error, do not aver, do not collect $200
* Reported by Antonio Martinez.
Nikodemus Siivola [Thu, 10 Aug 2006 10:11:39 +0000 (10:11 +0000)]
0.9.15.21: better hashing of general arrays
* Use the same algorithm as SB-INT:PSXHASH uses for general arrays.
* Performance problem reported by Andy Fingerhut.
Nikodemus Siivola [Thu, 10 Aug 2006 05:55:23 +0000 (05:55 +0000)]
0.9.15.20: MERGE-PATHNAMES is not unsafely-flushable
* Analogous to 0.9.15.13.
* Fix the test from 0.9.15.13 to actually test a failing case.
* Add an explanatory comment with the test-cases.
Christophe Rhodes [Wed, 9 Aug 2006 16:35:28 +0000 (16:35 +0000)]
0.9.15.19:
Allow forward-referenced-classes as specializers
... they are SPECIALIZERP, they have proper names...
... but it's at least slightly ANSIly-extending, so signal a
STYLE-WARNING.
Take this opportunity to rework the method initarg checking code
... no more LEGAL-FOO generic functions.
Christophe Rhodes [Wed, 9 Aug 2006 15:07:32 +0000 (15:07 +0000)]
0.9.15.18:
Add a (lightly-modified) version of Pascal Costanza's
implementation of mixed beta/standard method combination
(which happens to have a specialized make-method-lambda).
Christophe Rhodes [Tue, 8 Aug 2006 20:14:21 +0000 (20:14 +0000)]
0.9.15.17:
OK then. Fix %INSTANCE-TYPEP deftransform
... if we're testing for a structure-classoid, then any object
with an invalid layout is neccessarily not typep that
class.
... if we're testing for something with a fixed depthoid (i.e.
something which is always at a given position in the
layout-inherits), then if we get an object with an
invalid layout we mustn't throw an error before trying
to update the object.
Christophe Rhodes [Tue, 8 Aug 2006 15:03:46 +0000 (15:03 +0000)]
0.9.15.16:
Whoops. Don't claim to have fixed a bug that hasn't been fixed
yet. (The perils of not enough source trees...)
Christophe Rhodes [Tue, 8 Aug 2006 14:24:24 +0000 (14:24 +0000)]
0.9.15.15:
Fix bug #339c: INVALID-METHOD-ERROR from methods not matching
any method group.
... I'm actually not convinced by this fix: I think the method
combination itself should probably call I-M-E, rather
than have the effective method call it (see CLHS on
INVALID-METHOD-ERROR); however, at the moment, given
PRECOMPUTE-EFFECTIVE-METHOD's behaviour, this is the
only way to signal the error at the right time. Revisit
when/if effective-method precomputation is adjusted.
Christophe Rhodes [Mon, 7 Aug 2006 15:56:01 +0000 (15:56 +0000)]
0.9.15.14:
LESS BUGS!
Delete a bunch of now-dead bugs from BUGS (and comment on one or
two others):
Bug | Fixed in
----+---------
287 | 0.9.9.32
337 | 0.9.15.12
343 | 0.9.3.32
355 | 0.9.6.37
358 | 0.9.1.13
360 | 0.9.1.44
364 | 0.9.14.23
365 | 0.9.4.56
366 | 0.9.6.11 / 0.9.8.41 / 0.9.9.25
394 | 0.9.14.21
Nikodemus Siivola [Mon, 7 Aug 2006 14:31:45 +0000 (14:31 +0000)]
0.9.15.13: make PATHNAME not unsafely-flushable
* Reported by Richard Kreuter on sbcl-help.
* Add DEFTRANSFORMS for common cases.
Christophe Rhodes [Sat, 5 Aug 2006 12:32:34 +0000 (12:32 +0000)]
0.9.15.12:
Fix longstanding Haiblebug "method combination types that make
use of MAKE-METHOD don't work with user-defined method classes"
(sbcl-devel 2004-06-11)
... in a cheating way; special-case the second argument to
call-method, which probably isn't completely
MOP-friendly but does seem to play nice with the test
cases I can construct that don't change the semantics of
call-method.
... test cases from Pascal Costanza and Bruno Haible
Christophe Rhodes [Sat, 5 Aug 2006 10:56:58 +0000 (10:56 +0000)]
0.9.15.11:
No-one has told me that I'm missing something, so
... don't declare the types of temporaries used for keyword
argument processing. (It caused a pointless extra
typecheck in safe code, and additionally gave a
confusing error message when the user passed a bogus
argument)
... test cases, both implicit (with DEFSTRUCT) and explicit.
Juho Snellman [Fri, 4 Aug 2006 14:34:46 +0000 (14:34 +0000)]
0.9.15.10:
win32 changes to the test suite from Yaroslav Kavenchuk.
Juho Snellman [Fri, 4 Aug 2006 14:14:12 +0000 (14:14 +0000)]
0.9.15.9:
Changes to DISABLE-DEBUGGER:
* Allow disabling the debugger when *INVOKE-DEBUGGER-HOOK* is non-nil,
so that --disable-debugger works even when restoring cores where
that has been done.
* Store the old value of *I-D-H* when disabling the debugger, and
restore it back when enabling the debugger.
* Fix a bug where LDB wouldn't get disabled by --disable-debugger
if the core had been saved from an sbcl instance where the
debugger was disabled.
Nathan Froyd [Sat, 29 Jul 2006 22:59:05 +0000 (22:59 +0000)]
0.9.15.8:
Improve COUNT on bitvectors.
... pull conditionals out of the inner loop, similar to the recent
changes for BIGNUM-LOGCOUNT;
... while we're at it, change a few ='s in loop termination
conditions to >= for better type inference and code generation.
Nathan Froyd [Sat, 29 Jul 2006 21:50:39 +0000 (21:50 +0000)]
0.9.15.7:
More OPTIMIZATIONS.
Juho Snellman [Sat, 29 Jul 2006 01:58:37 +0000 (01:58 +0000)]
0.9.15.6:
Fix typo in threading.texinfo code example (extra paren).
Juho Snellman [Sat, 29 Jul 2006 01:54:51 +0000 (01:54 +0000)]
0.9.15.5:
Oops, the default SBCL_HOME in runtime.c was accidentally changed in
0.9.15.4. Revert that part of the patch.
Juho Snellman [Fri, 28 Jul 2006 20:09:08 +0000 (20:09 +0000)]
0.9.15.4:
If the core wasn't found on startup, don't just say we couldn't
find it, but also where sbcl thought the core should be.
Christophe Rhodes [Fri, 28 Jul 2006 14:47:21 +0000 (14:47 +0000)]
0.9.15.3:
Implement the READER-METHOD-CLASS/WRITER-METHOD-CLASS protocol.
In the process, note that the accessor methods generated for
(slot-value x 'a) [ on generic functions of names like
(SB-PCL::SLOT-ACCESSOR :GLOBAL A SB-PCL::READER) ] are not
standard accessor methods, as they do not correspond to a given
slot definition. So implement
GLOBAL-{READER,WRITER,BOUNDP}-METHOD classes for those, which
have a slot name but no slot definition.
Some rearrangements of early methods to support the new
functionality. REAL-MAKE-A-METHOD has to work moderately hard
to separate out all the various ways it can be called.
Include a test file for two ways of overriding the default
methods.
Juho Snellman [Fri, 28 Jul 2006 01:26:23 +0000 (01:26 +0000)]
0.9.15.2:
Fix wrong initarg to SIMPLE-PACKAGE-ERROR in WITH-PACKAGE-ITERATOR.
(Patch from Peter Graves, sbcl-devel, "Apparent buglet in
WITH-PACKAGE-ITERATOR")
Juho Snellman [Fri, 28 Jul 2006 01:08:40 +0000 (01:08 +0000)]
0.9.15.1:
Faster implementation of the LOGCOUNT VOP for x86 and x86-64,
and an faster BIGNUM-LOGCOUNT on all platforms. (Patch from
Lutz Euler on sbcl-devel, "Patch: Optimisation of LOGCOUNT" on
2006-07-23).
William Harold Newman [Wed, 26 Jul 2006 20:50:20 +0000 (20:50 +0000)]
0.9.15:
release, will be tagged as sbcl_0_9_15
Christophe Rhodes [Tue, 25 Jul 2006 16:06:31 +0000 (16:06 +0000)]
0.9.14.32:
Bandage for James Y Knight "internal PCL type error" sbcl-devel
2006-06-20.
... don't let invalid-wrappers near a cache in MAKE-EMF-CACHE.
... test case (+ whitespace)
Note that MAKE-EMF-CACHE via MEC-ALL-CLASSES-FOO functions is
hideously written, and will perform the same work several times,
pointlessly. Rather than build up several large lists with
duplicated class lists between them, it might be sensible to
perform some kind of walk down the class hierarchies, performing
wrapper invalidation and regeneration and class finalization as
required.
Juho Snellman [Mon, 24 Jul 2006 22:50:59 +0000 (22:50 +0000)]
0.9.14.31:
Bump +fasl-file-version+ for 0.9.15.
Juho Snellman [Thu, 20 Jul 2006 17:45:53 +0000 (17:45 +0000)]
0.9.14.30:
Micro-optimize x86-64 MOVE-FROM-SIGNED a bit more (thanks to
Lutz Euler).
Christophe Rhodes [Thu, 20 Jul 2006 11:02:18 +0000 (11:02 +0000)]
0.9.14.29:
Make REINITIALIZE-INSTANCE (well, SHARED-INITIALIZE in fact, but
I'm pretty sure that's OK) call FINALIZE-INHERITANCE rather than
UPDATE-CLASS if the class has already been finalized, as
required by AMOP.
Nathan Froyd [Thu, 20 Jul 2006 03:26:13 +0000 (03:26 +0000)]
0.9.14.28:
Tweak the x86oid backends to produce idiomatic code for unsigned
and signed moves and adjust the cost of the DIGIT-ASHR VOP to
force selection of its constant variant when appropriate.
Juho Snellman [Wed, 19 Jul 2006 21:46:51 +0000 (21:46 +0000)]
0.9.14.27:
The new x86 ALLOCATE-CONS-* assembly routines had a RET inside
a pseudo-atomic section, which resulted in pending interrupts
getting lost. Caused for example out-of-memory crashes on
threads.impure.lisp.
Christophe Rhodes [Wed, 19 Jul 2006 20:44:38 +0000 (20:44 +0000)]
0.9.14.26:
Make anonymous classes type specifiers. (Reported by Pascal
Costanza sbcl-devel 2006-07-19)
Christophe Rhodes [Wed, 19 Jul 2006 18:30:27 +0000 (18:30 +0000)]
0.9.14.25:
Fix bug (reported by Jasko on #lisp) regarding
TYPEP on funcallable-standard-classes with accessors.
... make a STANDARD-CLASSOID for funcallable-standard-classes,
too, as they behave (wrt the type system) in the same
way.
... STD-CLASSOID is now useless; delete it.
... simplify MAKE-PRELIMINARY-LAYOUT a bit, since MAKE-WRAPPER
now does the right thing.
Christophe Rhodes [Wed, 19 Jul 2006 11:31:49 +0000 (11:31 +0000)]
0.9.14.24:
Fix PFD ansi-tests ENSURE-DIRECTORIES-EXIST.8
Christophe Rhodes [Wed, 19 Jul 2006 11:13:00 +0000 (11:13 +0000)]
0.9.4.23:
Allow specializer objects as specializers in DEFMETHOD
... be a little bit more defensive when generating declarations
for the method function.
... peer suspiciously at the special case for SLOT-OBJECT, but
leave it alone for now.
Juho Snellman [Mon, 17 Jul 2006 19:39:45 +0000 (19:39 +0000)]
0.9.14.22:
Check whether SBCL_HOME has been set before trying to use it
in sbcl-homedir-pathname, since it might not have a value
when using :EXECUTABLE T cores. (Regression between 0.9.13 and
0.9.14, reported by James Knight).
Christophe Rhodes [Mon, 17 Jul 2006 12:28:13 +0000 (12:28 +0000)]
0.9.14.21:
Allow "anonymous" (in the sense of AMOP pp.67-69) classes
... names not necessarily symbols.
This entails a great big rearrangement of class finalization and
various associated activities; (setf class-name) and (setf
find-class) (and their sb-kernel:classoid equivalents) are now
slightly less tangled, but the coupling is still non-intuitive:
classoids need proper names earlier than classes, as they are
used in the compiler transform for TYPEP / DECLARE TYPE, so the
ideal of strictly parallel CLASSOID / CLASS is not present, and
left for future work.
Add tests, both of the new functionality and also for various
things that broke along the way, detected by gcl/ansi-tests and
from emergent properties of our own test suite.
Christophe Rhodes [Mon, 17 Jul 2006 12:28:13 +0000 (12:28 +0000)]
0.9.14.21:
Allow "anonymous" (in the sense of AMOP pp.67-69) classes
... names not necessarily symbols.
This entails a great big rearrangement of class finalization and
various associated activities; (setf class-name) and (setf
find-class) (and their sb-kernel:classoid equivalents) are now
slightly less tangled, but the coupling is still non-intuitive:
classoids need proper names earlier than classes, as they are
used in the compiler transform for TYPEP / DECLARE TYPE, so the
ideal of strictly parallel CLASSOID / CLASS is not present, and
left for future work.
Add tests, both of the new functionality and also for various
things that broke along the way, detected by gcl/ansi-tests and
from emergent properties of our own test suite.
Juho Snellman [Sun, 16 Jul 2006 21:56:37 +0000 (21:56 +0000)]
0.9.14.20:
Oops. After some recent changes, SBCL couldn't be built with 0.9.13 or
0.9.14 as the host. Add a workaround to allow using them too
(the actual bug was fixed in 0.9.14.19).
Juho Snellman [Sun, 16 Jul 2006 21:51:01 +0000 (21:51 +0000)]
0.9.14.19:
FOPCOMPILABLE-P wasn't checking whether the CADR of a LOCALLY form
was fopcompilable.
Juho Snellman [Sun, 16 Jul 2006 06:48:19 +0000 (06:48 +0000)]
0.9.14.18:
Get rid of the full call to FIND-CLASSOID in LAYOUT-OF for the
'null classoid case. LAYOUT-OF is inlined into PCL's dfuns, and
the full call caused suboptimal register allocation.
Juho Snellman [Sun, 16 Jul 2006 06:42:11 +0000 (06:42 +0000)]
0.9.14.17:
Implement x86-64 MOVE-FROM-SIGNED overflow detection using IMUL
instead of using three separate shifts / checks, which is somewhat
faster and smaller.
Juho Snellman [Sun, 16 Jul 2006 06:39:04 +0000 (06:39 +0000)]
0.9.14.16:
Fix x86-64 build [ (mov ...) -> (inst mov ...) ].
Nathan Froyd [Sat, 15 Jul 2006 17:40:09 +0000 (17:40 +0000)]
0.9.14.15:
Bandage over the problems noted in "*print-case* in multiple
threads broken", sbcl-devel 2006-07-14.
Nathan Froyd [Sat, 15 Jul 2006 16:08:48 +0000 (16:08 +0000)]
0.9.14.14:
Micro-optimize %ASHR with a constant shift amount on x86oids.
Nathan Froyd [Sat, 15 Jul 2006 04:26:24 +0000 (04:26 +0000)]
0.9.14.13:
Micro-optimize bit-vector accesses on x86 and x86-64:
... processor does the necessary masking for us, so we can
eliminate an AND instruction;
... in the process, remove dodgy interior pointer usage lurking
inside the small data-vector-ref VOPs.
Christophe Rhodes [Thu, 13 Jul 2006 10:03:38 +0000 (10:03 +0000)]
0.9.14.12:
Fix bug in SB-PCL::COMPUTE-CLASS-SLOTS, exposed by CHANGE-CLASS.
... test case
... this bug fix means that we no longer have to walk the
inherits vector looking for class slots from
superclasses, hooray.
Christophe Rhodes [Wed, 12 Jul 2006 13:25:55 +0000 (13:25 +0000)]
0.9.14.11:
Add a couple of necessary FINALIZE-INHERITANCEs to
mop.impure.lisp. With the current eager finalization they have
no effect, but the finalization regime probably has to change to
support anonymous classes.
Nathan Froyd [Sat, 8 Jul 2006 20:28:41 +0000 (20:28 +0000)]
0.9.14.10:
s/DO-/EMIT-/ in some IR2 translation functions.
Nathan Froyd [Sat, 8 Jul 2006 17:04:23 +0000 (17:04 +0000)]
0.9.14.9:
Introduce out-of-line ALLOCATE-CONS routines on x86.
Saves ~250K+ of core space. The allocation sequences for other
objects could be profitably out-of-lined in the same fashion;
one and two word bignums would be the next candidates.
Rudi Schlatte [Thu, 6 Jul 2006 06:14:17 +0000 (06:14 +0000)]
0.9.14.8:
Added support for the ucs-2 external format (thanks to Ivan Boldyrev)
Nathan Froyd [Tue, 4 Jul 2006 12:49:07 +0000 (12:49 +0000)]
0.9.14.7:
Micro-optimization of structure raw slot access on x86.
The common (only?) case is raw slot accesses with constant
indices, so take advantage of that:
... use the scale factor in effective addresses to avoid a shift;
... stuff the constant index into the displacement field.
Nathan Froyd [Tue, 4 Jul 2006 12:40:03 +0000 (12:40 +0000)]
0.9.14.6:
Correct some typos in the defstruct tests.
Juho Snellman [Wed, 28 Jun 2006 14:42:24 +0000 (14:42 +0000)]
0.9.14.5:
Add sbcl-pwd.sh to binary-distribution.sh, to make the binaries
actually installable.
Juho Snellman [Wed, 28 Jun 2006 11:35:51 +0000 (11:35 +0000)]
0.9.14.4:
FILE-POSITION sometimes returned inconsistent results for multibyte
external-format streams. (Reported by Lutz Euler on sbcl-devel,
patch from sbcl-devel "Patch: FILE-POSITION bug" by "vbzoli")
Christophe Rhodes [Wed, 28 Jun 2006 10:20:06 +0000 (10:20 +0000)]
0.9.14.3:
Merge pprint (cons symbol) change, making it sensitive to the
fboundness or otherwise of the symbol in function position.
Christophe Rhodes [Wed, 28 Jun 2006 08:12:29 +0000 (08:12 +0000)]
0.9.14.2:
Happy birthday to me!
Fix the internals manual
Rudi Schlatte [Tue, 27 Jun 2006 12:52:34 +0000 (12:52 +0000)]
0.9.14.1
Fix typo for building under cygwin
William Harold Newman [Mon, 26 Jun 2006 18:40:32 +0000 (18:40 +0000)]
0.9.14:
release version, will be tagged as sbcl_0_9_14
Juho Snellman [Sun, 25 Jun 2006 00:56:04 +0000 (00:56 +0000)]
0.9.13.53:
Fix unithreaded Solaris/x86 build failure.
Nikodemus Siivola [Tue, 20 Jun 2006 08:29:09 +0000 (08:29 +0000)]
0.9.13.52: Windows installer tweaks
* Name the installer sbcl-<version>.msi, not sbcl.msi
* De-impress Xach
<Xach> i was impressed by ID
<Xach> it reminded me of gentle DOOM
Nikodemus Siivola [Tue, 20 Jun 2006 06:45:45 +0000 (06:45 +0000)]
0.9.13.51: Ooops -- trivial fixes against previous commit
* s/PARSE-NATIVE-PATHNAME/PARSE-NATIVE-NAMESTRING/
* Fix garbld docstring in user-homedir-pathname.
Nikodemus Siivola [Tue, 20 Jun 2006 05:38:42 +0000 (05:38 +0000)]
0.9.13.50: Windows baby-steps
* Less sucky toplevel-init: use PARSE-NATIVE-NAMESTRING to deal with
user-supplied init-file names, and refactor the logic between Posix
and Windows.
* New runtime option: --debug-environment, prints out the command line
arguments and environment before anything fancy gets done to them.
Good for debugging startup from Windows shortcuts, etc.
* Less magic constants, more groveled stuff.
* SB-WIN32::GET-FOLDER-PATH renamed to SB-WIN32::GET-FOLDER-PATHNAME,
and it now returns pathnames instead of strings.
* Add internal function SBCL-HOMEDIR-PATHNAME, and centralize the
SBCL_HOME stuff there.
* Still LESS_SHOUTING.
* Move stuff-groveled-from-headers.lisp earlier in the build-order,
so toplevel.lisp can use it.
* No localtime_r and gmtime_r on Windows.
William Harold Newman [Mon, 19 Jun 2006 13:25:00 +0000 (13:25 +0000)]
0.9.13.49:
logged bug 404
Nikodemus Siivola [Mon, 19 Jun 2006 00:18:37 +0000 (00:18 +0000)]
0.9.13.48: ASDF update from upstream
* This version at least supports (oos 'load-op :foo :force t),
no thanks to yours truely.
Nikodemus Siivola [Sun, 18 Jun 2006 23:47:57 +0000 (23:47 +0000)]
0.9.13.47: Thread safety miscellania
* Use localtime_r and gmtime_r instead of thread-unsafe variants
in time.c.
* Note gethostby* reentrancy issue in sb-bsd-sockets in BUGS.
* Trivial PCL cleanups:
** *ALL-PV-TABLE-LIST* was unused -- things only got pushed on it,
but never read. Commented out with a comment, removed code that
did the pushing.
** *INITIAL-PV-TABLE* was unused, deleted.
** *EMPTY-PV* was unused, deleted.
** *EMPTY-CACHE* was unused, deleted.
** *MFP1* & friends implemented a two-element cache outside
a hash-table. Deleted and replaced with simple hash-table
access. Boinkmarks will show the truth.
** Moved redundant toplevel SETQs to the original DEFPARAMTER
of various *FOO-COST*s.
How is this thread-safety related? It happened while flagging
some PCL globals as safe and others as worthy of attention
in doc/internals-notes/threading-specials. Also sorted the
names, so *THE-FOO*s stand out in one place -- seeming to
me as least-likely causes of trouble.
* Whitespace.
Nikodemus Siivola [Sun, 18 Jun 2006 19:11:31 +0000 (19:11 +0000)]
0.9.13.46: GET-INTERNAL-RUN-TIME on Windows, + Windows cleanups
* Merge the patch by Frank Buss, that implements
get-internal-run-time for Windows, modulo stylistic changes.
(Restores buildability on Windows.)
* LESS UPCASE.
* Also slightly less #!+/-win32 conditionalization.
* Grovel more stuff on Windows.
William Harold Newman [Wed, 14 Jun 2006 19:18:45 +0000 (19:18 +0000)]
0.9.13.45:
comment tweak inspired by Gisle.Salensminde message to sbcl-help
William Harold Newman [Wed, 14 Jun 2006 13:52:05 +0000 (13:52 +0000)]
0.9.13.44:
tweaked text around READ-ERROR for undefined #n# label
Nikodemus Siivola [Mon, 12 Jun 2006 16:32:46 +0000 (16:32 +0000)]
0.9.13.43: install sbcl.info-1 (and any other *.info-* files)
* makeinfo splits large info-files into separate parts, so
we'd better deal with them.
Juho Snellman [Sat, 10 Jun 2006 05:07:24 +0000 (05:07 +0000)]
0.9.13.42:
Don't generate (or include) genesis/lutex.h when building without
SB-THREAD. Should fix the FreeBSD 4 build problems reported
on sbcl-devel.
Whitespace fixes.
Juho Snellman [Sat, 10 Jun 2006 01:17:35 +0000 (01:17 +0000)]
0.9.13.41:
Improvements to the disassembly of INC and DEC on x86-64 (patch
by Lutz Euler on sbcl-devel)
Nikodemus Siivola [Sat, 10 Jun 2006 01:00:58 +0000 (01:00 +0000)]
0.9.13.40: RUN-PROGRAM tweak
* If the streams passed to RUN-PRGRAM are composite streams,
try to extract the underlying FD-STREAM before falling
back to the tempfile/pipe strategy.
Juho Snellman [Sat, 10 Jun 2006 00:26:14 +0000 (00:26 +0000)]
0.9.13.39:
Fix FP exception handling on FreeBSD (patch by NIIMI Satoshi
on sbcl-devel)
Juho Snellman [Sat, 10 Jun 2006 00:04:05 +0000 (00:04 +0000)]
0.9.13.38:
Reintroduce the unused "linux_no_threads_p" variable (deleted
with some lutex-related cleanups), since the latest released
version of Slime wants to access it.
Juho Snellman [Fri, 9 Jun 2006 23:58:27 +0000 (23:58 +0000)]
0.9.13.37:
Add an explicit -fPIC to the gcc options for building a shared
library for x86-64 in threads.impure.lisp, as apparently required
for some versions of gcc. (thanks to Marco Monteiro)
Nikodemus Siivola [Fri, 9 Jun 2006 20:59:44 +0000 (20:59 +0000)]
0.9.13.36: global policy / null-lexenv confusion fix
* Do not store the global policy in null-lexenv, but include
it in subsequent lexenvs. Fixes visibility of global policy
in LOCALLY and MACROLET.
* Also actually enable the SB-LDB in default build instead of
just providing the framework to make this a good idea.
(Accidentally left out from from 0.9.13.33)
William Harold Newman [Fri, 9 Jun 2006 17:07:37 +0000 (17:07 +0000)]
0.9.13.35:
logged bug 403
added workaround for bug 403 when printing *DEBUG-CONDITION*
Nikodemus Siivola [Wed, 7 Jun 2006 19:08:30 +0000 (19:08 +0000)]
0.9.13.34: Class objects as specializers
* As reported by Pascal Costanze on sbcl-devel.
* Also record PCL code walker bug wrt. user-defined declarations.
Nikodemus Siivola [Wed, 7 Jun 2006 16:25:09 +0000 (16:25 +0000)]
0.9.13.33: :SB-LDB in default build
* DISABLE-DEBUGGER now also turns LDB off, so scriptability remains the same.
* Use lose() instead of monitor_or_something() in the runtime, and replace
set_lossage_handler() with enable/disable_lossage_handler().
Nikodemus Siivola [Wed, 7 Jun 2006 09:58:37 +0000 (09:58 +0000)]
0.9.13.32: restarts for slot-unbound
* USE-VALUE and STORE-VALUE have obvious meanings here, so use them.
* Missing NEWS for .31.
Nikodemus Siivola [Wed, 7 Jun 2006 09:49:54 +0000 (09:49 +0000)]
0.9.13.31: native-namestring bugfix
* The native-namestring should be same for :DIRECTORY (:RELATIVE) and
NIL.
Cyrus Harmon [Tue, 6 Jun 2006 21:27:46 +0000 (21:27 +0000)]
0.9.13.30
* restore macos/x86 buildability without sb-thread by making the
lutex primitive object defintion and %make-lutex and lutexp
definitions be #!+sb-lutex not #!+(and sb-lutex sb-thread).
Juho Snellman [Tue, 6 Jun 2006 17:11:16 +0000 (17:11 +0000)]
0.9.13.29:
Fix some regressions:
* x86 build was broken by the ALWAYS-TRANSLATABLE defknown changes
* Some symbol package issues in the test framework caused
--break-on-failure to stop working (patch by Yaroslav Kavenchuk)
Nathan Froyd [Tue, 6 Jun 2006 02:42:51 +0000 (02:42 +0000)]
0.9.13.28:
Move full-call checking responsibilities to DEFKNOWN.
... new ALWAYS-TRANSLATABLE flag in DEFKNOWN;
... change PONDER-FULL-CALL to check said flag;
... declare flag in appropriate cases;
... by analogy with %INSTANCE-{REF,SET}, flag their %RAW-*
counterparts as well (they were not flagged previously)..
There are probably other cases where it's applicable, too.
Nathan Froyd [Tue, 6 Jun 2006 01:54:42 +0000 (01:54 +0000)]
0.9.13.27:
Restore buildability on OS X/PPC.
Nikodemus Siivola [Mon, 5 Jun 2006 12:25:54 +0000 (12:25 +0000)]
0.9.13.26: Life after heap exhaustion on GENCGC
* If gc_find_freeish_pages fails, but managed to find _some_
memory, and we are not in GC, signal a HEAP-EXHAUSTED-ERROR.
* A few stray s/0/FREE_PAGE_FLAG/'s.
* Fix fprintf control string in print_generation_stats.
* *CONTROL-STACK-EXHAUSTION-SAP* is unused, get rid of it.
Nathan Froyd [Sun, 4 Jun 2006 14:25:06 +0000 (14:25 +0000)]
0.9.13.25:
Remove vestiges of raw-slot indirection in structures for non-HPPA
ports.
... #!{-,+}hppa where appropriate;
... purge %RAW-REF-FOO and associated SET VOPs on #-HPPA ports;
... tested on PPC.
Juho Snellman [Sat, 3 Jun 2006 21:31:33 +0000 (21:31 +0000)]
0.9.13.24:
Fix a bug with the EAGAIN/EINTR handling of SB-BSD-SOCKETS:SOCKET-SEND.
Add EINTR handling to SOCKET-ACCEPT and SOCKET-RECEIVE.
Thiemo Seufer [Sat, 3 Jun 2006 20:59:00 +0000 (20:59 +0000)]
0.9.13.23:
Unwhitespaceify.
Juho Snellman [Sat, 3 Jun 2006 20:26:52 +0000 (20:26 +0000)]
0.9.13.22:
Implement SB-THREAD mutexes and waitqueues using only pthread
functionality on platforms that don't support Linux futexes. New
platforms that can be compiled with SB-THREAD:
* Solaris/x86 (seems to be as stable as SBCL threads on Linux)
* OS X/x86 (some known stability problems, but doesn't fail on the
thread regression tests every time)
* FreeBSD/x86 (reportedly "flat-out broken", tends to cause
kernel panics)
While I (Juho) am doing the final merge from lutex-branch to
HEAD, much of the work was done by Cyrus Harmon, based on an
initial implementation by Nathan Froyd. The Solaris work was
funded by Tellme Networks, Inc.
Juho Snellman [Thu, 1 Jun 2006 12:49:00 +0000 (12:49 +0000)]
0.9.13.21:
Make TIME show the amount of run-time spent in GC. SBCLs of old used
to have this feature, but (as far as I can tell) it was unintentionally
disabled in 0.pre8.119.thread-gc.1.
Juho Snellman [Thu, 1 Jun 2006 12:01:18 +0000 (12:01 +0000)]
0.9.13.20:
Merge sbcl-devel patch "NAME-CHAR and unrecognised symbols" by
Robert J. Macomber, fixing an issue with NAME-CHAR signaling an error
when given an invalid symbol.