Commits on Jan 27, 2004

    	* contrib/sb-aclrepl/repl.lisp: Use *command-char* when printing
    	help message
    kevinrosenberg committed Jan 27, 2004

    	More pathname fun, *sigh*
    	... make logical pathnames respect print/read consistency (version
    		*is* significant for them)
    	... adjust the pathname tests so that they test equality rather
    		than namestring equality, but minus version testing
    		because that's too complicated right now.
    csrhodes committed Jan 27, 2004

    	Fix some OPEN tests
    	... :DIRECTION :IO didn't work if the file didn't exist, despite
    		default being :CREATE
    	... adjust filesys test to cope with new disallowed
    	... we still fail some OPEN tests in PFD's suite: some are because
    		of not supporting (unsigned-byte 33) streams, while the
    		rest are because DIRECTORY is broken on logical pathnames,
    csrhodes committed Jan 27, 2004

    	RIP (physical) PATHNAME-VERSION significance
    	... remove all internal discrimination based on the version
    		field if the pathname involved has the Unix host.
    	... parsing of a physical pathname namestring (i.e. again either
    		explicitly or implicitly on the Unix host) never produces
    		a version from the namestring.
    	... make :if-exists :new-version behave like :if-exists :error,
    		because despite weasel-words in CLHS someone might
    		legitimately expect :if-exists :new-version not to
    		clobber the old version.
    	... (this latter needs to be revisited, when OPEN is made aware
    		of logical pathnames and the wacky logic they impose; we
    		can support :new-version with LPNs, but only if OPEN is
    	... make pathnames more likely to be read/print consistent, by
    		throwing errors in more cases (we now pass PFD's test for
    		that, not that it's that stringent).
    	... throw errors on use of (:absolute :up) and friends in CL
    		operators, but...
    	... don't throw error on creation, and in fact test in sb-posix
    		that we can use #p"/../" for what it means.
    csrhodes committed Jan 27, 2004
Commits on Jan 23, 2004

    	Dan's GC fragmentation fix
    	... & BOXED_REGION
    	... it builds, builds itself, doesn't break on PFD's tests;
    		that's good enough for me :-)
    	... I think I've summarized the "bug fix" right in NEWS, but
    		do correct if not.
    csrhodes committed Jan 23, 2004
Commits on Jan 20, 2004

    	... applies when (a) PATHNAME does not provide a NAME; (b)
    		DEFAULT-PATHNAME has a non-null VERSION.
    	... "If pathname does specify a name, then the version is not
    		affected by default-pathname. If this process leaves the
    		version missing, the default-version is used."
    csrhodes committed Jan 20, 2004

    	Fix for PEEK-CHAR: whitespace means "according to the
    	readtable", not "static list of characters"
    	... but that's complicated for efficiency: we need WHITESPACEP
    		defined before peek-char so that it can be expanded
    	... so move peek-charish things into a new later file
    	... delete unused-by-core WHITESPACE-CHAR-P, and adjust
    		contribs to accomodate this
    	... also add #\page to sb-aclrepl's static whitespace characters
    csrhodes committed Jan 20, 2004
Commits on Jan 19, 2004

    	A couple of ANSI fixes
    	... LOAD-LOGICAL-PATHNAME-TRANSLATION's return value was
    	... RENAME-FILE now has a chance of working on streams, because
    		the utterly screwy FILE-NAME now receives a pathname,
    		which it likes, rather than a namestring, which it
    csrhodes committed Jan 19, 2004
Commits on Jan 18, 2004

    	Various stream functions should signal TYPE-ERROR if their
    	argument is not a stream
    	... also implement a potentially useful diagnostic to unconfuse
    		users of extensible streams which don't fully implement
    		the protocol.
    csrhodes committed Jan 18, 2004
Commits on Jan 17, 2004

            * Fix PFD's MISC.275: in IR1-OPTIMIZE-CAST DEST of an
              multi-use LVAR may be not a block start.
    Alexey Dejneka committed Jan 17, 2004
Commits on Jan 14, 2004

    	Benchmark-inspired SEARCH deftransform for simple-base-strings
    	... Adjust per APD sbcl-devel to allow the type deriver to
    		work out all the types
    	... put boyer-moore version in compiler-extras in contrib/
    	Also fix stale-symbols so that it runs
    	... most stale symbols appear to be within vop-parse and
    		pv-table structures
    csrhodes committed Jan 14, 2004

    	Bandage to gencgc: it's not good, but at least it works, kind of
    	... restore gc_alloc_generation == 0 test in gc_find_freeish_pages
    	... add a simple test case to try to prevent this happening
    csrhodes committed Jan 14, 2004

            * Stack analysis: propagate liveness information from
              NLEs. (fixes bug 299, PFD's MISC.185, 186, 231, 232, 235,
              236, 237).
    Alexey Dejneka committed Jan 14, 2004
Commits on Jan 9, 2004

    	Merge patch (Eric Marsden sbcl-devel 2004-01-08) for build on
    	... less fragile than my version, so in it goes
    csrhodes committed Jan 9, 2004

    	Remove madvise() (and dubious value for PAGE_SIZE) from
    	... GC still not working properly :(
    	... memcpy()'s behaviour when given overlapping memory ranges
    		appears not to be the problem, either; replacing it with
    		memmove() doesn't fix things
    csrhodes committed Jan 9, 2004
Commits on Jan 8, 2004

    	Various things that are definitely fixes for something
    		in ppc/system.lisp (as suggested by Lennart Staflin
    		sbcl-help 2004-01-01).  This may not fix everything,
    		but it's clearly part of *a* problem if not *the*
    	... define and use a fixnump() static inline function in
    		gencgc.c and purify.c, correcting along the way the
    		problem in ptrans_code (CSR sbcl-devel 2004-01-08)
    	Let's see what difference that makes, shall we?
    csrhodes committed Jan 8, 2004
Commits on Jan 7, 2004

    	Fix building on non-x86
    	... protect setup_i386_stack_scav with X86/GENCGC once more
    		(noted by Fabricio Chalub and Raymond Wiker)
    csrhodes committed Jan 7, 2004

            * Fix argument type checking in =, /=, <, <=, >, >=,
              PEEK-CHAR. (reported by Peter Graves).
    Alexey Dejneka committed Jan 7, 2004

            * Fix argument type checking in =, /=, <, <=, >, >=,
              PEEK-CHAR. (reported by Peter Graves).
    Alexey Dejneka committed Jan 7, 2004
Commits on Jan 4, 2004

    	Fix the %LEA-MOD32 fix, *sigh*:
    	... define out-of-line versions for it (#+/#-sb-xc-host)
    csrhodes committed Jan 4, 2004

    	Fix implementation of *-MOD32 and %LEA, as pointed out by Paul
    	Dietz (on #lisp IRC) and APD (sbcl-devel 2004-01-04)
    	... make %LEA a somewhat more generic operation; its BASE and
    		INDEX arguments can now be any integers, not just 32-bit
    		ones; SCALE and DISP are restricted to {1,2,4,8} and
    		(SIGNED-BYTE 32) respectively.
    	... write a modular-fun-optimizer for %LEA, cutting the integer
    		arguments to the appropriate width; define a VOP for
    	... add one of PFD's test cases to our test suite.
    csrhodes committed Jan 4, 2004
Commits on Jan 2, 2004

    	Implement modular (unsigned-byte 32) multiplication on x86
    csrhodes committed Jan 2, 2004

            * Fix PFD's MISC.249: when deleting LET, also delete all
              references to its variables.
    Alexey Dejneka committed Jan 2, 2004
Commits on Jan 1, 2004

    	Some essential-for-my-comprehension purify and gencgc
    	refactoring.  Some functional changes too, though none that
    	seem to make any difference in practice
    	Ripped out vast swathes of "is this a large object" checking
    	in gencgc's allocation routines.  Now the only criterion for
    	whether an object is handled as a large object is whether its
    	size exceeds the large object threshold.
    	Fixed bug in gc_find_freeish_pages that was causing lots of
    	fragmentation: allocation regions for small objects may now
    	start on the same page as previously closed regions with the
    	same characteristics
    	Fixed rarely-observed bug in gencgc_pickup_dynamic so that it
    	doesn't create a single xMb region from the whole of dynamic
    	space when a core is loaded, instead splitting the space into
    	as many regions as it can (this may be related to bug 95,
    	though I don't /really/ want to claim I fixed that until I see
    	better what the problem is there).  Unless you save unpurified
    	cores you're unlikely to be bitten by this often.
    	New newspace_alloc routine in purify.c makes it all a bit
    	easier to see what's going on there.
    	Replace all hand-coded memory-copying loops with memcpy(); the
    	compiler should be able to optimize this better than we can
    	(actually makes no difference that I can detect to execution
    	time, but the code is now shorter)
    telent committed Jan 1, 2004
Commits on Dec 30, 2003

    	Fix bug in DECODE-UNIVERSAL-TIME (Vincent Arkensteijn sbcl-devel
    	... some minor renaming in patch
    	... delete unused SB-UNIX::UNIX-GET-TIMEZONE
    	... add a rudimentary test case or three
    csrhodes committed Dec 30, 2003

            * Fix PFD's MISC.184
            ... new kind of a deleted function: :ZOMBIE = effectless LET;
            ... DELETE-LAMBDA is used only for a deletion of an
                unreachable functions;
            ... for a LET-like lambda DELETE-LAMBDA deletes its BIND
            ... DO-NODES-BACKWARDS stops iteration when the traversed
                block is to be deleted.
    Alexey Dejneka committed Dec 30, 2003
Commits on Dec 28, 2003
  1. release, tagged as sbcl_0_8_7

    William Harold Newman committed Dec 28, 2003
Commits on Dec 20, 2003

    	Nikodemus Siivola patchery
    	... fix FIXME for obscurity of *fixup* structure
    	... fix compile with FSHOW defined
    csrhodes committed Dec 20, 2003

              STANDARD-GENERIC-FUNCTION as suggested by Brian Mastenbrook
              and CSR.
    Alexey Dejneka committed Dec 20, 2003
Commits on Dec 18, 2003

    	merged patch from Marco Baringer (sbcl-devel 2003-12-02) to
    		allow (TRACE "MY-PACKAGE-NAME")
    	collapsed IF clause at the end of EXPAND-TRACE, since SBCL now
    		always has a compiler and shouldn't need to worry about
    		supporting interpreter-only environments
    William Harold Newman committed Dec 18, 2003
Commits on Dec 16, 2003

    	Quiet.  Too quiet.  Fix bug in pprinting backquotes, introduced
    	*sigh* when fixing the last bug...
    	... we need to print once to a string stream, to look at the
    		first character to make sure that it's not a @ or a .
    	... and then we need to print again, but this time to the real
    		stream (which is at a different logical block position)
    	... yes, possibly there is a better way.
    	Also put identity where mouth is: add self to SUPPORT
    csrhodes committed Dec 16, 2003
Commits on Dec 13, 2003

    	The long-threatened removal of the 'parent' thread.  Now SBCL
    	only uses one thread until you start the second one
    	Also removed countdown_to_gc: it's redundant now we have
    	a thread->state slot
    telent committed Dec 13, 2003

    	Remove unnecessary #inclues from gencgc.c
    	Update NEWS file and manual for futex and new fg/bg manipulation
    telent committed Dec 13, 2003
Commits on Dec 12, 2003

    	...fiddling with TRACE docs in anticipation of actually
    		making it do PROFILEing as intended
    	...small doc/ fixes
    	...(re-?)deleted FOP-CHARACTER since it's still speculative
    		generality (will presumably be added back when Unicode
    		comes, but isn't helpful now, and would be only
    		infinitesimally helpful then, since it's untested now
    		and so easy to add then)
    	...MORE LOC: broke some long lines
    	...stdlog seemed to be unused.
    William Harold Newman committed Dec 12, 2003
Commits on Dec 11, 2003

    	At the request of the type system's most heavy user...
    	... refactor NEGATION-TYPEs
    	... make NEGATE an operation in TYPE-CLASS
    	... define type methods for :NEGATE, replacing one god-awful
    		NOT type translator
    	... define a (cached) TYPE-NEGATION function
    	... replace too many uses of
    		(specifier-type `(not ,(type-specifier foo)))
    		with (type-negation foo)
    	We pass as many tests as we used to (both here and in PFD's suite)
    	and we now go faster than we did before 0.8.6 on PFD's random
    	tester.  Sounds good to me.
    	(This was initially part I of a two part refactor.  This stage
    	turns out to be enough for now; if it hadn't been, it should be
    	possible to achieve even greater speed by changing the representation
    	of CONS types to include not just CAR and CDR types but also
    	their negations; then operations on CONS types such as UNION and NEGATE
    	would be much much faster, at a slight cost in initialization).
    csrhodes committed Dec 11, 2003