Restore buildability goodness on PPC and SPARC ... move n-fixnum-foo-bits and so on from sparc-specific code to early-vm.lisp ... while I'm at it, make the n-lowtag-bits calculated rather than #+ / #- ... restore the hideous hack in ppc type-vops UGH UGH UGH (my brain is too slow to fix this properly)
More docstrings fixes ... COLLECT-DOCUMENTATION should always return RESULT, even when the package itself is undocumented; ... make the unique name reflect the package being documented, not the home package of the symbol, so reexports work right; ... get special-operators more right; ... also include one or two of these things in the manual so we get a feel for what's going on.
Too late! Merge fixes to docstrings mechanism ... Make it work (including being able to load contribs) on freshly-dumped uninstalled cores; ... transform #\+ to "plus" ... generate documentation for all nominally public packages (note that because of reexports, SB-ALIEN:* gets documented as common-lisp-var-star. Probably fixable)
Some documentation tweaks: - Added doc/manual/Makefile (no docstring extraction yet) - compiler.texinfo: Moved "compiler limitations" section backwards: Better describe the cool features first, only then mention where they don't apply - efficiency.texinfo: remove `makeinfo' style warning
Some cosmetic cleanups to make this a better place to start a new x86-64 branch ... remove large chunks of long-float: it didn't work anyway ... parms.lisp happens fractionally earlier so that we can defconstant nil-value slightly more cleanly some raw 3s and 4s get made into functions of n-lowtag-bits
Make NOTINLINE calls to known functions have their return types derived. ... depun the BASIC-COMBINATION-KIND slot; add FUN-INFO slot to hold any applicable fun-info; ... add a couple of clauses to optimizing routines; ... test case for new behaviour, and also adjust NOTINLINE IDENTITY declarations in other tests
tidying... ...*REVERSED-TYPE-INFO-INIT-FORMS* isn't needed at run time. ...HOLES stuff is long-dead code -- seems to be related to something on old old CMU CL SPARC port -- so delete it. (pointed out by nyef on #lisp) ...For that matter, FIND-HOLES is no longer used either, so delete it too. ...belated *and*-*edit* in cut-and-paste-and-edit of FTYPE declaration of !COLD-LOSE
* Import initial version of manual in Texinfo markup * Add Debugger chapter of cmucl manual - Comment out list-locations, step, breakpoint commands, since they do not work at the moment - add *debug-print-variable-alist* documentation, adapt debug optimization policy description
DYNAMIC-EXTENT &REST lists. ... much as per CSR sbcl-devel 2004-03-29; ... alter listify-rest-args VOPs on non-x86 to meet the new use (don't do anything yet with the DX parameter) ... note concerns over stack manipulation in x86 DX allocation This version compiles and passes tests on x86 and alpha (modulo one unrelated bugfix, coming soon)
Pointless microoptimizations 'R' us: ... in (defun foo (x) (declare (optimize speed) (type (signed-byte 32) x)) (logand x #xffffffff)) on the x86, there is no need to perform the hardware AND, as we are not interested in the flags. Make it so. (The system already automatically handles the representation such that X and the result can live in the same register -- to see this, wrap the LOGAND above as (ASH (LOGAND ...) -3) and disassemble.