Commits on Sep 29, 2003

    telent committed Sep 29, 2003
    	Minimal fix to compile on Linux 2.6 and recent FreeBSD:
    	disable running of pre-gc hooks
    	move running of post-gc hooks later, so it is done after
    	 other threads start running aagin, outside the GC lock
Commits on Sep 26, 2003

    csrhodes committed Sep 26, 2003
    	Compiler fixes (touching only files in the alpha backend)
    	... the assembly routine for (signed-byte 32) [sic] truncate did
    		in fact work only for signed-byte 32 quantities, but was
    		being called on signed-byte 64 quantities.  Fix it.
    	... the translators for ASH were broken in amusing ways: some
    		led to internal compiler errors when fed out-of-range
    		numbers; more insidiously, others allowed temporaries
    		to be overwritten in some cases.  Fix them.
    	... lastly but not leastly, the %LI code to load an immediate
    		was wrong in a very small proportion of cases.  After
    		much scribbling, deduce why and fix it.
    	... test cases to go with all of the above.
Commits on Sep 25, 2003

    rudi committed Sep 25, 2003
            Make double-channel simple streams work
            ... conditionalize flush-buffer etc. for code shared between
                single-channel and double-channel simple streams
            (Thanks to David Lichteblau for the reports)

    csrhodes committed Sep 25, 2003
    	contrib/ updates for Solaris^WSunOS, as per Vincent Arksteijn
    	sbcl-devel 2003-09-25
    	... conditionalize distrust-length on SUNOS feature, which exists,
    		as opposed to SOLARIS which doesn't
    	... make def-to-lisp emit CL:NIL, not just NIL.
    	... try to figure out what the solaris clause meant in

    Alexey Dejneka committed Sep 25, 2003
            * Fix bug reported by Paul F. Dietz 2003-09-24 "NIL is not of
Commits on Sep 24, 2003

    csrhodes committed Sep 24, 2003
    	Alpha build fix
    	... write a slightly more general PREPARE-ARGUMENT function for
    		modular arithmetic;
    	... as discussed on #lisp IRC 2003-09-24, post-0.8.4 we can optimize
    		common cases on platforms where register width and
    		bignum-element-width are the same.
Commits on Sep 23, 2003

    csrhodes committed Sep 23, 2003
    	Treatment of --load
    	... half fix the problems.  Put LOAD into a multiple escape, so
    		that changes to the readtable don't break the
    		command-line option;
    	... log behaviour in the presence of #\" and #\* as a bug.

    Alexey Dejneka committed Sep 23, 2003
            * Fix bug reported by Paul Dietz 2003-09-22: do not perform
              modular function coversion in deleted blocks.
Commits on Sep 22, 2003

    telent committed Sep 22, 2003
    	After vast effort (mostly Christophe's) we have a fix for the
    	hangs in multithreaded CLX.  Under some circumstances we could
    	be trying to scavenge one thread's stack using the stack
    	pointer from another: needless to say, this is not too effective.
    	When sleeping on a queue, loop around sigwaitinfo restarting
    	it until it stops returning EINTR

    Alexey Dejneka committed Sep 22, 2003
            * Fix transformers for </>/<=/>=:
            ... when swap arguments, change function name "<" <-> ">";
            ... do not check whether an interval is a constant LVAR;
            * add type declaration in CONSTANT-LVAR-P.
Commits on Sep 21, 2003

    rudi committed Sep 21, 2003
            * Merged patch "speeding up simple-stream creation" from David
            Lichteblau (sbcl-devel Sep 20, 2003)
            * Conditionalize comments in sb-posix constants definition on

    Alexey Dejneka committed Sep 21, 2003
            * fix bug reported by Nicodemus Siivola:
            ... FIND-RESULT-TYPE: ignore uses in deleted blocks/functions;
            ... DELETE-LAMBDA: work with :OPTIONAL;
            * DELETE-BLOCK: when deleting ENTRY, delete it from
              LAMBDA-ENTRIES and delete all its EXITs.
            * add DERIVE-TYPE optimizer for ISQRT (thanks to Robert
              E. Brown).

    kevinrosenberg committed Sep 21, 2003
        * Compilation changes for contrib/sb-bsd-sockets for SuSE AMD64
        Compilation is now successful on this platform, but two test cases
        currently fail.

    telent committed Sep 21, 2003
    	asdf-install gets a good deal smarter about GPG signatures: it's
    	now usable for installing CLiki package even from non-CCLAN places
    	NEWS file updates for GC changes
    	Minor changes to 'Beyond ANSI' chapter in manual
Commits on Sep 19, 2003

    Alexey Dejneka committed Sep 19, 2003
            * DOLIST: take CDR before execution of the body as suggested
              by Paul F. Dietz;
            * DELETE-COMPONENT: do not try to delete deleted lambda
              (bug reported by Paul Dietz);
            * fix building with #+HIGH-SECURITY:
            ... {IN,OUT}-SYNONYM-OF: fix comma placing;
            ... src/pcl/gray-streams.lisp: make redefinition of
              {INPUT,OUTPUT}-STREAM-P be atomic.

    Alexey Dejneka committed Sep 19, 2003
            * FROB-DO-BODY: wrap a body in an additional TAGBODY.

    Alexey Dejneka committed Sep 19, 2003
            * FROB-DO-BODY: wrap a body in an additional TAGBODY.
Commits on Sep 18, 2003

    telent committed Sep 18, 2003
    	GC fix fixes
    	Rearrange the sigcontext GCing a bit and add commentary
    	describing what's going on
    	Delete debugging message accidentally committed in .76
    	tests/threads.impure.lisp now works (but don't worry, I
    	have another test locally which still kills sbcl sometimes)

    kevinrosenberg committed Sep 18, 2003
        * Initial changes to build on SuSE AMD64. Still need to port sb-bsd-sockets.

    csrhodes committed Sep 18, 2003
    	Implement FILE-POSITION on string streams
    	... patch from Nikodemus Siivola sbcl-devel 2003-09-15

    telent committed Sep 18, 2003
         GC fixes and miscellaneous commentary:
         Frob VOP attributes for {push-words-on,pop-words-from}-c-stack,
         per APD comment
         Comment: why WITH-PINNED-OBJECTS doesn't need an UNWIND-PROTECT
         In x86 pseudo-atomic start, clear interrupted bit _before_
         setting atomic bit, to eliminate window where a pa section might
         be interrupted immediately after starting then have the evidence
         of interruption erased
         When scavenging thread control stacks on gencgc, also look at live
         interrupt contexts that might not be on the current stack (e.g.
         alternate signal stacks).
         When stopping a thread so it may be GCed, save the signal context
         _before_ decrementing countdown_to_gc
         In lose(), send SIGSTOP to all threads other than the currently
         losing one, so we have a chance to examine what went wrong before
         they stomp all over memory

    Alexey Dejneka committed Sep 18, 2003
            * Do not let-convert into a deleted function.
Commits on Sep 17, 2003

    Alexey Dejneka committed Sep 17, 2003
            * Change transformers for </>/>=/<= to work with unions of
            * CONSTRAIN-REF-TYPE: ignore constraints of form (EQL val

    Alexey Dejneka committed Sep 17, 2003
            * DELETE-LAMBDA: delete also contained lambdas.
Commits on Sep 16, 2003

    csrhodes committed Sep 16, 2003
    	Merge modular_arithmetic_branch
    	... include untested modular arithmetic implementation for hppa
    	... unkludge sb-md5: now implemented using natural, high-level
    		lisp.  (and as a bonus, compiles to shorter code on x86
    		at least).
    	... passes self-tests and pfdietz-tests on x86 at least.
    		More exhaustive testing on other platforms is probably
    		needed, maybe with the torturer

    Alexey Dejneka committed Sep 16, 2003
            * Update consistency checking;
            * fix bug found by Paul Dietz ("NIL is not of type LVAR") in
              IMMEDIATELY-USED-P: component tail block does not have a
              start CTRAN.

    Alexey Dejneka committed Sep 16, 2003
            * Update comments to the change of "continuation"
            * fix bug reported by WHN: IR1-translator for TRULY-THE does
              nothing if its value is unused;
            * describe bug reported by Nikodemus Siivola on sbcl-devel
            * rewrite test of restoring floating point modes on Alpha: old
              version failed due to the absence of ABORT restart.
Commits on Sep 15, 2003

    csrhodes committed Sep 15, 2003
    	Implement slightly less stupid 32bit-logical-foo on the alpha
    	... including fixing the ORNOT/LOGNOR bug, natch.
    	... also, we implement a hack: converting (logand ... #xffffffff)
    		to a one-instruction mskll rather than several instructions
    		of load and an and instruction.  This could be extended
    		to more masks.

    csrhodes committed Sep 15, 2003
    	Cosmetic fixes
    	... document MacOS X's stack size limitation in README
    	... annoying placement of a close quote in

    csrhodes committed Sep 15, 2003
    	Kludge around an apparent problem in hardware/kernel/somewhere
    	to do with denormalized float traps...
    	... explicitly clear that bit in os_restore_fp_control();
    	... document in BUGS;
    	... handle ARITHMETIC-ERROR, not just DIVISION-BY-ZERO, so that
    		ports without fp words in sigcontext pass the test

    csrhodes committed Sep 15, 2003
    	Somewhat amazingly, fixing the floating point issue described in
    	"Alpha aargh" (CSR sbcl-devel 2003-09-12) wasn't too hard to fix.
    	... so fix it :-)

    csrhodes committed Sep 15, 2003
    	Fix Alpha data corruption bug
    	... as with MIPS case a couple of months ago, index goes
    		forwards through a string, not backwards.
    	... include a test case (how did that happen?)