sbcl.git
18 years ago0.9.2.18: various error &co reporting improvements and build tweaks
Nikodemus Siivola [Sun, 3 Jul 2005 13:51:06 +0000 (13:51 +0000)]
0.9.2.18: various error &co reporting improvements and build tweaks
 * print the cell name for CELL-ERRORs when *PRINT-ESCAPE* is true.
 * print just the filename, not the SHARED-OBJECT structure for failed
   LOAD-SHARED-OBJECT.
 * improve our Darwin dlerror(3)-shim reporting; also clean up warnings from
   ppc-darwin-dlsim.c and reindent it for 80 columns.
 * move reporting of failed contribs to make-target-contrib.sh, and re-add
   --disable-debugger, which had accidentally fallen off.

18 years ago0.9.2.17:
Kevin Rosenberg [Sun, 3 Jul 2005 03:07:40 +0000 (03:07 +0000)]
0.9.2.17:
* contrib/sb-aclrepl/repl.lisp: update KILL-CMD for new thread
objects.

18 years ago0.9.2.16: restore buildability on PPC
Nikodemus Siivola [Sun, 3 Jul 2005 01:11:04 +0000 (01:11 +0000)]
0.9.2.16: restore buildability on PPC
 * missing VOPs from arith.lisp are here, I hope.

18 years ago0.9.2.15:
Kevin Rosenberg [Sat, 2 Jul 2005 21:42:11 +0000 (21:42 +0000)]
0.9.2.15:
* contrib/sb-aclrepl/repl.lisp: PROCESSES-CMD now recognizes
that threads are objects, not numbers.

18 years ago0.9.2.14:
Christophe Rhodes [Sat, 2 Jul 2005 15:33:46 +0000 (15:33 +0000)]
0.9.2.14:
Make it build, at least, on sparc.

18 years ago0.9.2.13:
Alexey Dejneka [Sat, 2 Jul 2005 06:49:12 +0000 (06:49 +0000)]
0.9.2.13:
        * Add constant folding of ARRAY-HEADER-P for complex-array
          argument (fixes spurious warning reported by Eduardo
          Mu\~noz).
        * FOREIGN-SYMBOL-ADDRESS-AS-INTEGER does not loose second
          result (fix bug reported by Luis Oliveira).
        * Don't run external format checks on SBCL without Unicode
          support.

18 years ago0.9.2.12:
Gabor Melis [Fri, 1 Jul 2005 14:35:00 +0000 (14:35 +0000)]
0.9.2.12:
  * bug fix: no more highly sporadic "couldn't check whether ~S is
    readable" when reading a stream and an interrupt hits in the middle
    of a select system call
  * added with-restarted-syscall macro
  * added abcl support to build scripts

18 years ago0.9.2.11:
Christophe Rhodes [Fri, 1 Jul 2005 11:18:54 +0000 (11:18 +0000)]
0.9.2.11:
Document in an internalsy kind of way the various string
types that exist.

18 years ago0.9.2.10:
Gabor Melis [Fri, 1 Jul 2005 11:00:26 +0000 (11:00 +0000)]
0.9.2.10:
  * threads for x86-64

18 years ago0.9.2.9: thread objects
Gabor Melis [Fri, 1 Jul 2005 08:48:08 +0000 (08:48 +0000)]
0.9.2.9: thread objects
  * Public interface changes
    ** proper thread objects instead of thread ids
    ** (MAKE-THREAD FN &KEY NAME) => THREAD
    ** (THREAD-NAME THREAD): threads have names (useful for debugging,
    logging)
    ** (THREAD-ALIVE-P THREAD)
    ** *CURRENT-THREAD* special is bound in each thread
    ** (LIST-ALL-THREADS) returns a list of all active threads
  * Notes
    ** thread-init moved earlier in cold-init and reinit
    ** the lisp side does not ever use os_thread_t (it was problematic due
       to pthread_t being opaque) but struct thread *
    ** threads are reaped (i.e. the thread is pthread_joined and struct
       thread* is freed) by the thread object's finalizer. This makes
       it easy to implement resetting threads. Running threads are kept
       in sb-thread::*all-threads*.
    ** threads block all blockable signals when going down:
       interrupt-thread and others cannot catch it at an inappropriate
       moment, for instance calling quit outside the catch %end-of-the-world
    ** target-thread.lisp renamed target-multithread.lisp,
       target-thread.lisp now contains the generic thread support
    ** new file early-thread.lisp: define *current-thread*
    ** removed thread state STOPPING that was only used for assertions and
       complicated matters
    ** renumbered thread states
    ** sb-thread::release-spinlock now releases the locks with
       non-fixnum value, but is no longer safe to call multiple times
    ** much simplified locking for threads and gc
    ** fixed deadlocking bugs introduced by the pthread merge

18 years ago0.9.2.8
Rudi Schlatte [Fri, 1 Jul 2005 05:59:39 +0000 (05:59 +0000)]
0.9.2.8
Make interactive-stream-p a generic function so Gray streams can
specialize on it.

18 years ago0.9.2.7:
Nathan Froyd [Thu, 30 Jun 2005 20:56:33 +0000 (20:56 +0000)]
0.9.2.7:
Enable slightly more efficient operations with 32-bit constants
  on PPC.  This reduces our instruction count in the inner loop
  of SB-MD5 by nearly 10% and brings us closer to the code that
  GCC generates.

18 years ago0.9.2.6:
Nathan Froyd [Thu, 30 Jun 2005 20:15:59 +0000 (20:15 +0000)]
0.9.2.6:
Fix ASH to fold away shifts of zero based on the actual derived
  type, not just the constancy of the arg.

18 years ago0.9.2.5: fix failure in OPEN when *print-readably* is T (thanks to Xach)
Brian Mastenbrook [Wed, 29 Jun 2005 00:11:37 +0000 (00:11 +0000)]
0.9.2.5: fix failure in OPEN when *print-readably* is T (thanks to Xach)

18 years ago0.9.2.4:
Nathan Froyd [Tue, 28 Jun 2005 14:56:11 +0000 (14:56 +0000)]
0.9.2.4:
Permit specialized arrays to be placed in a function's constant
  vector, enabling faster access (important in, e.g.,
  table-driven crypto algorithms).

18 years ago0.9.2.3:
Rudi Schlatte [Tue, 28 Jun 2005 14:22:37 +0000 (14:22 +0000)]
0.9.2.3:
bivalent streams: streams opened with :element-type :default now allow
character and binary (unsigned-byte 8) I/O

18 years ago0.9.2.2
Rudi Schlatte [Tue, 28 Jun 2005 12:27:35 +0000 (12:27 +0000)]
0.9.2.2
Minor test cleanups: remove temporary files after tests finish.

18 years ago0.9.2.1
Rudi Schlatte [Tue, 28 Jun 2005 09:09:40 +0000 (09:09 +0000)]
0.9.2.1
Support for koi8-r external format (thanks to Ivan Boldyrev)

18 years ago0.9.2:
William Harold Newman [Mon, 27 Jun 2005 21:10:45 +0000 (21:10 +0000)]
0.9.2:
release, tagged as sbcl_0_9_2

18 years ago0.9.1.65:
Gabor Melis [Thu, 23 Jun 2005 09:30:22 +0000 (09:30 +0000)]
0.9.1.65:
        * link against pthreads only if featurep :sb-thread

18 years ago0.9.1.64:
Alexey Dejneka [Mon, 20 Jun 2005 18:36:12 +0000 (18:36 +0000)]
0.9.1.64:
        * A slightly modified patch by Nikodemus Siivola: compiler
          consistency checking did not work with delayed optional
          entries.

18 years ago0.9.1.63:
Christophe Rhodes [Mon, 20 Jun 2005 16:52:45 +0000 (16:52 +0000)]
0.9.1.63:
DX for sparc.

18 years ago0.9.1.62: align CSP for dx closures on alpha and ppc
Nikodemus Siivola [Mon, 20 Jun 2005 16:17:01 +0000 (16:17 +0000)]
0.9.1.62: align CSP for dx closures on alpha and ppc
  * test-case pending.
  * untested on alpha.

 A cookie for the first to implement Christophe's suggestion to "adapt
 pfdietz' random tester to generate correct dynamic-extent
 declarations and calls with many arguments" that produces something that
 fails on ppc 0.9.1.61, but passes on .62 ...

18 years ago0.9.1.61: really allocate dx closures on stack on ppc and alpha
Nikodemus Siivola [Mon, 20 Jun 2005 12:43:50 +0000 (12:43 +0000)]
0.9.1.61: really allocate dx closures on stack on ppc and alpha
  * add a test-case.
  * untested on alpha.

18 years ago0.9.1.60:
Gabor Melis [Mon, 20 Jun 2005 12:39:12 +0000 (12:39 +0000)]
0.9.1.60:
        * sb-thread::release-spinlock now releases the locks with
          non-fixnum value, but is no longer safe to call multiple times

18 years ago0.9.1.59:
Gabor Melis [Sun, 19 Jun 2005 19:35:41 +0000 (19:35 +0000)]
0.9.1.59:
        merged most of the pthreads stuff from amd64-pthread-branch except
        the amd64 part, plus:
        * in the runtime thread_kill, thread_sigmask, thread_self
          stand for pthread_kill or kill, sigprocmaks or
          pthread_sigmask, and pthread_self or getpid respectively
          controlled by the sb-thread feature
        * fixed recursive get on session-lock that happened when a gc
          interrupting get-foreground reaped a thread
        * fixed sigint handling: removed broken (by pthread signal
          handling semantics) sigint enable/disable machinery in favor
          of sigint-%break looking up the foreground thread and
          interrupting it, which is itself racy :-(.
        * numerous fixes for interrupt-thread
        * threads block signals until they are set up properly
        * removed suspend-thread, resume-thread
        * destroy-thread is now equivalent to terminate-thread.

18 years ago0.9.1.58:
Christophe Rhodes [Sun, 19 Jun 2005 17:38:41 +0000 (17:38 +0000)]
0.9.1.58:
Really stack-allocate dx closures on x86-64.

18 years ago0.9.1.57: just how hard can "cvs add" be?
Nikodemus Siivola [Sun, 19 Jun 2005 16:16:48 +0000 (16:16 +0000)]
0.9.1.57: just how hard can "cvs add" be?
  ...the internals manual, really, this time...

18 years ago0.9.1.56: start of an internals manual
Nikodemus Siivola [Sun, 19 Jun 2005 16:01:59 +0000 (16:01 +0000)]
0.9.1.56: start of an internals manual
  * documenting initially "Foreign Linkage": linkage table, lazy
    aliens, and callbacks.

18 years ago0.9.1.55: trivial cleanup, new documentation directory
Nikodemus Siivola [Sun, 19 Jun 2005 15:57:43 +0000 (15:57 +0000)]
0.9.1.55: trivial cleanup, new documentation directory
 * delete stray "for Alpha" from ppc backend.
 * doc/internals/ for internals manual.

18 years ago0.9.1.54: dynamic-extent lists and closures on ppc
Nikodemus Siivola [Sun, 19 Jun 2005 13:48:16 +0000 (13:48 +0000)]
0.9.1.54: dynamic-extent lists and closures on ppc
  * Implement stack-allocating of lists and closures on PPC, cribbing
    liberally from the Alpha backend.

18 years ago0.9.1.53: dynamic-extent &rest on ppc
Nikodemus Siivola [Sun, 19 Jun 2005 11:22:59 +0000 (11:22 +0000)]
0.9.1.53: dynamic-extent &rest on ppc
  * Implement stack-allocation of &REST lists on PPC, cribbing
    liberally from the Alpha backend.

18 years ago0.9.1.52:
Alexey Dejneka [Sun, 19 Jun 2005 06:30:50 +0000 (06:30 +0000)]
0.9.1.52:
        * Implement stack allocation of dynamic extent lists,
          &REST-lists and closures for Alpha-32;
          ... remove obsolete "economic" implementation of stack
              allocation.

18 years ago0.9.1.51:
Nathan Froyd [Fri, 17 Jun 2005 19:23:29 +0000 (19:23 +0000)]
0.9.1.51:
* Improve UB*-BASH-COPY by forcing the compiler to use fixnum
  arithmetic on word-sized copying--avoids spurious fixnum
  arithmetic overflow checking.  This should improve the
  performance of REPLACE on character strings on 32-bit platforms;
* ...use ~D instead of ~A to form UB*-BASH-* function names,
  protecting ourselves against arbitrary *PRINT-BASE*s;
* ...belatedly improve test suite for bashing functions to
  print out the function being tested.  Doing this at least
  partly assures the user that the test run has not hung.

18 years ago0.9.1.50: enable callback tests on x86
Nikodemus Siivola [Thu, 16 Jun 2005 20:42:42 +0000 (20:42 +0000)]
0.9.1.50: enable callback tests on x86

18 years ago0.9.1.49: callbacks on x86
Nikodemus Siivola [Thu, 16 Jun 2005 20:39:51 +0000 (20:39 +0000)]
0.9.1.49: callbacks on x86
  * thanks to David Lichteblau for massaging the code originally
     ported to SBCL by Thomas F. Burdick, based on the work for CMUCL
     by Helmut Eller, to the current scheme of things.

  ...now what just the sparc backend remains to be ported from sbcl-callables,
  and a new one for mips...

  ...and getting the interface straight, and rebustifying the code a bit:
  sbcl-callables includes eg. some logic to check that the types given
  are compatible -- reinstating this sounds like a good idea one things
  settle down...

18 years ago0.9.1.48:
Christophe Rhodes [Thu, 16 Jun 2005 14:48:00 +0000 (14:48 +0000)]
0.9.1.48:
Implement (most of) the dynamic-extent vops on x86-64.
... no support for vectors yet.

18 years ago0.9.1.47
Rudi Schlatte [Thu, 16 Jun 2005 14:19:28 +0000 (14:19 +0000)]
0.9.1.47
Merge EUC-JP external format support and tests
  - thanks to NIIMI Satoshi for the patch

18 years ago0.9.1.46: refactoring callbacks
Nikodemus Siivola [Thu, 16 Jun 2005 12:43:51 +0000 (12:43 +0000)]
0.9.1.46: refactoring callbacks
  * turn ALIEN-CALLBACK into a macro so we avoid a runtime call to the compiler.
  * additional bits of interface: ALIEN-CALLBACK-P, ALIEN-CALLBACK-FUNCTION,
     (SETF ALIEN-CALLBACK-FUNCTION), and INVALIDATE-ALIEN-CALLBACK.
  * more tests.

18 years ago0.9.1.45:
Christophe Rhodes [Thu, 16 Jun 2005 09:37:29 +0000 (09:37 +0000)]
0.9.1.45:
Merge THS "Mips assembly revisited" sbcl-devel 2005-06-15

18 years ago0.9.1.44:
Christophe Rhodes [Thu, 16 Jun 2005 09:05:03 +0000 (09:05 +0000)]
0.9.1.44:
Fix for CALL-METHOD / RESTART-CASE interaction.
... patch from Gerd Moellmann cmucl-imp 2005-06-04
... (Bruno's test case is quite neat.)

18 years ago0.9.1.43: more callback work
Nikodemus Siivola [Wed, 15 Jun 2005 17:06:29 +0000 (17:06 +0000)]
0.9.1.43: more callback work
  * trivial implementations of DEFINE-ALIEN-CALLBACK and ALIEN-LAMBDA.
     D-A-C is essentially OK, A-L sucks in any number of ways.
  * tests

18 years ago0.9.1.42: partial callback implementation
Nikodemus Siivola [Wed, 15 Jun 2005 06:13:13 +0000 (06:13 +0000)]
0.9.1.42: partial callback implementation

 * SB-ALIEN-INTERNALS:ALIEN-CALLBACK (to be exported from SB-ALIEN at
    a later date) makes callbacks for functions designators that can
    be ALIEN-FUNCALLed or passes as function pointers to C-code. Based
    on patch by Thomas F. Burdick based on work for CMUCL by Helmut
    Eller.

 PPC/Darwin only for now.

18 years ago0.9.1.41:
Alexey Dejneka [Mon, 13 Jun 2005 16:36:02 +0000 (16:36 +0000)]
0.9.1.41:
        * BIT-* functions are not foldable (reported by Paul F.
          Dietz).

18 years ago0.9.1.40:
Alexey Dejneka [Mon, 13 Jun 2005 11:05:44 +0000 (11:05 +0000)]
0.9.1.40:
        * COERCE for objects other than numbers and characters is not
          foldable (fix a bug reported by Nikodemus Siivola).
        * Set LC_ALL to "C" when building SBCL.
        * Set locale to "C" in run-tests.sh.

18 years ago0.9.1.39:
Christophe Rhodes [Sun, 12 Jun 2005 22:08:23 +0000 (22:08 +0000)]
0.9.1.39:
Restore alpha buildability.
... define two-arg-/= as a static function;
... don't grep out A symbols from nm.

18 years ago0.9.1.38:
Christophe Rhodes [Sun, 12 Jun 2005 14:02:34 +0000 (14:02 +0000)]
0.9.1.38:
Merge DFL raw-slots patch (sbcl-devel "raw slot changes"
2005-05-18)
... with an amalgam of ths' two mips versions;
... note in OPTIMIZATIONS about the negative index idea, and the
disabledness of HPPA

18 years ago0.9.1.37:
Christophe Rhodes [Sat, 11 Jun 2005 20:46:19 +0000 (20:46 +0000)]
0.9.1.37:
Maybe fix the build on alpha.
... one more WITH-FIXED-ALLOCATION problem.

18 years ago0.9.1.36:
Christophe Rhodes [Fri, 10 Jun 2005 09:24:50 +0000 (09:24 +0000)]
0.9.1.36:
Merge THS "Branch relaxation..." sbcl-devel 2005-06-09

18 years ago0.9.1.35:
Christophe Rhodes [Fri, 10 Jun 2005 09:01:32 +0000 (09:01 +0000)]
0.9.1.35:
Fix PFD "Weird SBCL bug..." sbcl-devel 2005-06-09
... MORE PROGRAM-ERRORs.

18 years ago0.9.1.34:
Gabor Melis [Thu, 9 Jun 2005 10:44:29 +0000 (10:44 +0000)]
0.9.1.34:
        * gcc 2.95: compilation fix
        * killed a few innocent looking warnings in the runtime (79 to go)

18 years ago0.9.1.33:
Gabor Melis [Thu, 9 Jun 2005 08:32:29 +0000 (08:32 +0000)]
0.9.1.33:
        * gencgc: don't flood the system with gc interrupts if not
          absolutely necessary
        * fix compilation on freebsd

18 years ago0.9.1.32:
Christophe Rhodes [Wed, 8 Jun 2005 14:10:23 +0000 (14:10 +0000)]
0.9.1.32:
Implement direct ub32 -> float on PPC.

18 years ago0.9.1.31:
Christophe Rhodes [Wed, 8 Jun 2005 11:16:48 +0000 (11:16 +0000)]
0.9.1.31:
Remove sigsetmask() calls on alpha, ppc missed out of previous
signal rearrangement
... (sb-sprof on ppc appears to work now :-)

18 years ago0.9.1.30:
Juho Snellman [Wed, 8 Jun 2005 10:36:17 +0000 (10:36 +0000)]
0.9.1.30:
* Fix compile on x86-64 (popfl -> popfq).
        * Declarations in a DOLIST body are also in scope for the
          DOLIST return-form.
        * Evaluate the ELEMENT-TYPE keyword argument to
          WITH-OUTPUT-TO-STRING even in cases where the element-type is
          not used (i.e. FILL-POINTER-OUTPUT-STREAM), in case it has
          side-effects.
        * COMPILE-FILE accepts all pathname designators as INPUT-FILE
          and OUTPUT-FILE (streams weren't accepted before).

18 years ago0.9.1.29:
Gabor Melis [Wed, 8 Jun 2005 08:49:49 +0000 (08:49 +0000)]
0.9.1.29:
        A number of signal handling cleanup/fixes:
        * fix gencgc/maybe_defer_handler race (thanks to Thiemo)
        * interrupt_maybe_gc (on cheneygc platforms): check for already
          pending handler before calling maybe_defer_handler in order
          not to lose interrupts
        * interrupt_handle_pending: check for the pending handler being
          null
        * run_deferred_handler: set the pending handler to null, before
          calling it to guard against the handler enabling interrupts ...
        * more defensiveness: enforce invariants: checks for signal masks,
          interrupts
        * refactoring: undoably_install_low_level_interrupt_handler wraps
          blockable handlers in low_level_maybe_now_maybe_later
        * don't unblock signals unconditionally in interrupt_maybe_gc_int just
          restore the sigmask from the interrupted context (kludge removed)
        * removed misguided sigprocmask calls from mips, hppa and sparc
          sig{trap,ill} handlers
        * removed non-x86 version of handle_breakpoint (interrupts are enabled
          in now common handle_breakpoint)
        * fixed arrange_return_to_lisp_function/post_signal_tramp to save and
          restore eflags (interrupt-threads seems to work)

18 years ago0.9.1.28:
Juho Snellman [Tue, 7 Jun 2005 10:49:56 +0000 (10:49 +0000)]
0.9.1.28:
MORE PRETTY:

* "Oops". Change the definition of the recenctly introduced
          WITH-CIRCULARITY-DETECTION macro to only include BODY once.
          Otherwise code with nested PPRINT-LOGICAL-BLOCKs would
          expand into ridiculous amounts of code. (The macroexpansion
          of PPRINT-LAMBDA-LIST was >18000 lines).
        * Return NIL from PPRINT-POP when OBJECT is NIL.
* Check for malformed LABELS/FLET/MACROLET forms in PPRINT-FLET.

        Other stuff:

        * Declare a more specific type for *CHARACTER-DATABASE* to
          avoid going through HAIRY-DATA-VECTOR-REF. (thanks to
          Christophe for noticing this)
        * Add missing type predicate for VECTOR-NIL-P. (MISC.596)

19 years ago0.9.1.27: (truename "symlink-to-dir") === (truename "symlink-to-dir/")
Nikodemus Siivola [Mon, 6 Jun 2005 06:54:21 +0000 (06:54 +0000)]
0.9.1.27: (truename "symlink-to-dir") === (truename "symlink-to-dir/")
  * it appears that libc doesn't like trailing slashes at the end of symlink
     names; paper over this sillyness.

19 years ago0.9.1.26:
Juho Snellman [Sun, 5 Jun 2005 11:37:01 +0000 (11:37 +0000)]
0.9.1.26:
Fix some circularity detection issues in the pretty printer.

* Move the circularity detection infrastructure into early-print.lisp.
        * Do circularity checks in PPRINT-LOGICAL-BLOCK.
* Add a couple of new tests, disable an old test which is (IMHO)
          invalid.

19 years ago0.9.1.25: source-plist & related
Nikodemus Siivola [Sat, 4 Jun 2005 09:54:42 +0000 (09:54 +0000)]
0.9.1.25: source-plist & related
   * add :SOURCE-PLIST option to WITH-COMPILATION-UNIT for attaching
     arbitrary source information to compiled code, accessible as
     SB-INTROSPECT:DEFINITION-SOURCE-PLIST.
   * COMPILED-DEBUG-INFO-SOURCE was always a list of one element, make
     it just the element.
   * rename DEBUG-SOURCE-INFO to DEBUG-SOURCE-FUNCTION for clarity.

Caveat updater: this breaks current Slime.

19 years ago0.9.1.24:
Nathan Froyd [Fri, 3 Jun 2005 13:19:48 +0000 (13:19 +0000)]
0.9.1.24:
s/32/64/ in :NOTEs for x86-64 arithmetic vops where appropriate.

19 years ago0.9.1.23:
Christophe Rhodes [Fri, 3 Jun 2005 10:17:25 +0000 (10:17 +0000)]
0.9.1.23:
Merge THS "Fix generic-/= for alpha, mips, ppc, sparc" patch
(sbcl-devel 2005-05-29)
... actually it's mostly a mips optimization, because I don't
think generic-/= can ever be emitted with the source
transforms we have at the moment.

19 years ago0.9.1.22:
Nathan Froyd [Thu, 2 Jun 2005 14:38:54 +0000 (14:38 +0000)]
0.9.1.22:
*sigh* Correct SPECIF*I*ER-TYPE typo.

19 years ago0.9.1.21:
Nathan Froyd [Thu, 2 Jun 2005 04:02:07 +0000 (04:02 +0000)]
0.9.1.21:
* Add unsigned bounds derivers for LOGXOR, based on the ones
  present in CMUCL;
* Convert existing unsigned bounds derivers to a more idiomatic
  CL style, eliminating unnecessary work along the way;
* Belatedly add tests for bounds derivation.

19 years ago0.9.1.20:
Nathan Froyd [Wed, 1 Jun 2005 22:31:34 +0000 (22:31 +0000)]
0.9.1.20:
Fix typo in LOGAND-DERIVE-UNSIGNED-HIGH-BOUND (thanks to jsnell
  for testing and rtoy for his CMUCL work on the same).

(Since CMUCL has essentially the same code, a future commit
 will add similar derivers for LOGXOR.  A more idiomatic CL
 style will also be adopted.)

19 years ago0.9.1.19:
Juho Snellman [Wed, 1 Jun 2005 21:30:39 +0000 (21:30 +0000)]
0.9.1.19:
* Fix build on multiarch x86-64
        * Fix small ansi-bug. The (declare (typespec var*)) abbreviation for
          (declare (type typespec var*)) now works with all type specifiers.
          Previously only symbols were allowed.

19 years ago0.9.1.18:
Christophe Rhodes [Wed, 1 Jun 2005 14:46:24 +0000 (14:46 +0000)]
0.9.1.18:
Fix for the modular arithmetic improvement from nfroyd
... lognot is unary :-)
... (I don't have _Hacker's Delight_, so I guessed what was
meant).

19 years ago0.9.1.17:
Nathan Froyd [Wed, 1 Jun 2005 14:06:49 +0000 (14:06 +0000)]
0.9.1.17:
Disable bit-bashing transforms on (VECTOR NIL).

19 years ago0.9.1.16:
Christophe Rhodes [Wed, 1 Jun 2005 13:59:02 +0000 (13:59 +0000)]
0.9.1.16:
Implement SOCKET-OPEN-P mostly per Tony Martinez sbcl-devel
2004-10-23.
... add a test or two for it, which look a bit weird to me
but what do I know?

19 years ago0.9.1.15:
Nathan Froyd [Wed, 1 Jun 2005 13:41:40 +0000 (13:41 +0000)]
0.9.1.15:
Improve modular arithmetic by:
* Making bounds of (unsigned) modular function type derivation
  more precise;
* Being less pessimistic when deriving bounds for LOGAND in
  the case when its arguments are known to be bounded and
  unsigned.  As a bonus, LOGIOR type derivation in the same
  case is now more precise as well.

The upshot of all this is that a function like:

(defun foo (x y)
  (declare (type (integer 0 3) x y))
  (mod (- (+ x 4) y) 4))

now uses only fixnum arithmetic.

19 years ago0.9.1.14:
Christophe Rhodes [Wed, 1 Jun 2005 13:19:36 +0000 (13:19 +0000)]
0.9.1.14:
Fix the canonicalized default initarg protocol
... (KEY FORM FUN) rather than (KEY FUN FORM).

I hope this isn't too painful for anyone out there.

19 years ago0.9.1.13:
Christophe Rhodes [Wed, 1 Jun 2005 12:08:50 +0000 (12:08 +0000)]
0.9.1.13:
Fix for Haiblebug "ensure-generic-function doesn't support
:declare"
... simply allow both :declare and :declarations;
... add some documentation and index entries.

19 years ago0.9.1.12:
Christophe Rhodes [Wed, 1 Jun 2005 11:42:43 +0000 (11:42 +0000)]
0.9.1.12:
Merge "Add socket-not-connected-error to sb-bsd-sockets" (Tony
Martinez sbcl-devel 2004-11-06)
... NOT-CONNECTED-ERROR seems to match the naming scheme better
than SOCKET-NOT-CONNECTED-ERROR.

19 years ago0.9.1.11:
Christophe Rhodes [Wed, 1 Jun 2005 11:22:59 +0000 (11:22 +0000)]
0.9.1.11:
Merge patch ("SOCKET-CLOSE closes different socket's fd stream"
Tony Martinez sbcl-devel 2004-10-25 *sigh*)
... there's a suspicious-looking bit of stuff in the cond clause
above it, too: what happens if closing the stream causes
an error?  FIXME.

19 years ago0.9.1.10:
Christophe Rhodes [Wed, 1 Jun 2005 10:07:39 +0000 (10:07 +0000)]
0.9.1.10:
MORE DIFFSTAT
... merge Thiemo Seufer "Makefile improvements for the C
runtime" sbcl-devel 2005-05-29
... better dependency chasing by gcc;
... s/arch/LISP_FEATURE_ARCH/, hooray.
Add stuff to .cvsignores until it mostly stops emitting ?s

Untested on anything not x86-64.  Shout if broken.

19 years ago0.9.1.9:
Juho Snellman [Wed, 1 Jun 2005 06:06:20 +0000 (06:06 +0000)]
0.9.1.9:
Fix a few ansi-test failures. Symbols can't be both the name of
        a type and the name of a declaration (ANSI 3.8.21).

        * Add a validate-function slot into the globaldb TYPE-INFO
          structure. If defined, the function is called from (SETF INFO)
          before SET-INFO-VALUE.
        * Define validation functions for (INFO :TYPE :KIND) and
          (INFO :DECLARATION :RECOGNIZED).
        * Remove (DECLAIM (DECLARATION CLASS)) from PCL. As far as I
          can see, PCL uses %CLASS for its internal declarations these
          days.

19 years ago0.9.1.8:
Juho Snellman [Mon, 30 May 2005 05:25:44 +0000 (05:25 +0000)]
0.9.1.8:
* Fix typo (current-dynamic-space-spart -> current-dynamic-space-start)
          in the gencgc branch of the "clean up DYNAMIC-SPACE-START
          and -END ugliness on cheney-platforms" changes in 0.9.1.5.
        * Fix compiling with GCC 4 on x86 and x86-64 (sbcl-devel
          "Fixes for gcc4", Sascha Wilde).
        * Remove a leftover "with-tn@fp-top(x)" from x86-64/float.lisp
          (sbcl-devel , James Knight)
        * More x86-64 fp cleanups. (sbcl-devel "x86-64 fp exceptions",
          "x86-64 move-*-float-arg bug", James Knight 2005-05-27/29).

19 years ago0.9.1.7: "fix" SB-SPROF on non-gencgc platforms
Nikodemus Siivola [Sun, 29 May 2005 21:08:45 +0000 (21:08 +0000)]
0.9.1.7: "fix" SB-SPROF on non-gencgc platforms
   * block some "potentially dangerous, but not really important"
      signals for GC on non-gencgc platforms. see kludge_sigset_for_gc
      for commentary.

19 years ago0.9.1.6:
Gabor Melis [Sun, 29 May 2005 15:55:13 +0000 (15:55 +0000)]
0.9.1.6:
  * fixed some lockups due to gc/thread interaction
  * removed unused functions: unblock_sigcont_and_sleep, block_sigcont

19 years ago0.9.1.5: bigger dynamic space on PPC plus cleanups
Nikodemus Siivola [Sun, 29 May 2005 15:48:37 +0000 (15:48 +0000)]
0.9.1.5: bigger dynamic space on PPC plus cleanups
   * patch by Cyrus Harmon
   * clean up DYNAMIC-SPACE-START and -END ugliness on cheney-platforms.

19 years ago0.9.1.4: ENSURE-CLASS-USING-CLASS patch by Gerd Moellman, from cmucl-imp
Nikodemus Siivola [Sun, 29 May 2005 10:37:20 +0000 (10:37 +0000)]
0.9.1.4: ENSURE-CLASS-USING-CLASS patch by Gerd Moellman, from cmucl-imp
  * accept a class as :METACLASS as per AMOP.

19 years ago0.9.1.3
Rudi Schlatte [Sun, 29 May 2005 10:27:38 +0000 (10:27 +0000)]
0.9.1.3
Small stream cleanups:
  - Use same names in generalized-peeking-mechanism as cmucl
  - set-fd-stream-routines can now in theory be used to change stream
    element-type and external-format (but this clashes with
    fast-read-char/-byte, since these work off another layer of buffers)

19 years ago0.9.1.2:
Christophe Rhodes [Sat, 28 May 2005 09:00:34 +0000 (09:00 +0000)]
0.9.1.2:
Merge a couple of cleanup fixes that I've had tagged for months
if not years.

19 years ago0.9.1.1:
Juho Snellman [Thu, 26 May 2005 22:53:59 +0000 (22:53 +0000)]
0.9.1.1:
    * Invalid dotted lists no longer raise a read error when
      *READ-SUPPRESS* is T
    * Use a more tasteful :EXPECTED-TYPE for type errors related to
      function names

19 years ago0.9.1:
William Harold Newman [Thu, 26 May 2005 19:11:40 +0000 (19:11 +0000)]
0.9.1:
release, tagged as sbcl_0_9_1

19 years ago0.9.0.41:
Juho Snellman [Sun, 22 May 2005 00:07:45 +0000 (00:07 +0000)]
0.9.0.41:
Increment +FASL-FILE-VERSION+.

19 years ago0.9.0.40
Rudi Schlatte [Fri, 20 May 2005 16:43:21 +0000 (16:43 +0000)]
0.9.0.40
Fix peek-char bug reported by Fredrik Sandstrom (sbcl-devel
2005-05-17, "Bug in peek-char")

19 years ago0.9.0.39:
Christophe Rhodes [Fri, 20 May 2005 09:45:14 +0000 (09:45 +0000)]
0.9.0.39:
Merge amended "64bit FFI for mips/mipsel" patch (Thiemo Seufer
sbcl-devel 2005-05-09)
... including 64-bit return value in call_into_lisp.  (Not
currently used)
... other minor MIPS cleanups and bugfixes too as described
in the mail message.

19 years ago0.9.0.38:
Juho Snellman [Thu, 19 May 2005 02:50:38 +0000 (02:50 +0000)]
0.9.0.38:
Fix a few ansi-test bugs:

* The type-errors signalled for invalid function names now have
          a correct (if ugly) expected type.
        * Functions taking type names as arguments correctly signal
          type-errors (instead of package-lock errors, arg-count-errors,
          etc) for some pathological non-function names (e.g (SETF),
          (SETF . BAR)).
        * (SETF (DOCUMENTATION ... 'STRUCTURE)) no longer signals an error
          for structures defined with a :TYPE.
        * Documentation strings specified in the DEFSTRUCT form for
          typed structures are no longer immediately discarded (not
          strictly a bug, just a quality of implementation issue...)
        * FILE-STRING-LENGTH and STREAM-EXTERNAL-FORMAT now work on
          non-fd-streams too.
        * FILE-LENGTH now also works on broadcast streams. The spec
          has slightly conflicting opinions on this issue; FILE-LENGTH
          description says that stream must be associated with stream
          or an error is signalled. BROADCAST-STREAM description
          explicitly describes how FILE-LENGTH must be implemented.

19 years ago0.9.0.37:
Juho Snellman [Wed, 18 May 2005 02:22:48 +0000 (02:22 +0000)]
0.9.0.37:
        * Merge sbcl-devel "Unneeded REX prefixes on x86-64"
          (Lutz Euler, 2005-05-17)
        * Merge sbcl-devel " x86-64 fp exceptions" (James Knight,
          2005-05-17)
        * Add "--userinit /dev/null --sysinit /dev/null" to the
          default SBCL_XC_HOST.
        * Clean up some stale x86 code (mostly floating point related)
          in the x86-64 port.

19 years agoFix bug 242 for fd-streams
Rudi Schlatte [Mon, 16 May 2005 19:40:08 +0000 (19:40 +0000)]
Fix bug 242 for fd-streams
  ... fd-streams have a method that writes n octets; use it.

19 years ago0.9.0.35
Rudi Schlatte [Mon, 16 May 2005 12:19:33 +0000 (12:19 +0000)]
0.9.0.35
Slight depessimization of WRITE-SEQUENCE of byte arrays
  ... Don't go through full stream dispatch machinery for every byte

19 years ago0.9.0.34
Rudi Schlatte [Sun, 15 May 2005 20:09:56 +0000 (20:09 +0000)]
0.9.0.34
Eliminate unnecessary seeks on socket streams
  ... Introduce dual-channel-p flag in fd-streams to discriminate
      between files and socket/pipe-streams

19 years ago0.9.0.33:
Christophe Rhodes [Sun, 15 May 2005 15:03:07 +0000 (15:03 +0000)]
0.9.0.33:
Make SB-MD5 enforce its requirements.
... also keep lambda lists around, for manual autogroveling
purposes

19 years ago0.9.0.32: "ASCII by any other name"
Nikodemus Siivola [Sun, 15 May 2005 12:49:16 +0000 (12:49 +0000)]
0.9.0.32: "ASCII by any other name"
 * Solaris nl_langinfo calls ASCII "646", so add the aliases for
    :ISO-646, :ISO-646-US, and :|646|; restores Solaris buildabilty.

...now there's still failing tests though: backtrace issues and the
compiler is losing type information...

19 years ago0.9.0.31: sparc build fixes
Nikodemus Siivola [Sat, 14 May 2005 14:24:29 +0000 (14:24 +0000)]
0.9.0.31: sparc build fixes
 * disembodied WITH-FIXED-ALLOCATION.
 * globals.h patch from Thiemo Seufer.

... not that this is enough to restore Sparc buildability yet,
but at least with this we can reach make-target-2.sh...

19 years ago0.9.0.30: towards callbacks: static-vectors
Nikodemus Siivola [Fri, 13 May 2005 18:30:44 +0000 (18:30 +0000)]
0.9.0.30: towards callbacks: static-vectors
 * SB-INT:MAKE-STATIC-VECTOR allows direct allocation of specialized
    vectors to static space. This is eventually destined to become
    SB-EXT:MAKE-STATIC-ARRAY, but needs more frills before that --
    current setup is enough to support callbacks (and a bit more then
    that).
 * unrelated defrobnification, s/&rest/&body/ in a few places, and
    commentary on cunning punning.

19 years ago0.9.0.29:
Kevin Rosenberg [Thu, 12 May 2005 21:47:12 +0000 (21:47 +0000)]
0.9.0.29:
* contrib/sb-aclrepl/repl.lisp: Use new toplevel catch rather than
attempt to use the removed toplevel restart handler.

19 years ago0.9.0.28:
Christophe Rhodes [Thu, 12 May 2005 14:33:13 +0000 (14:33 +0000)]
0.9.0.28:
Fix for "fun with frameworks" SIGBUS bug.
... arg.  (argv[] specifically)

19 years ago0.9.0.27: fix bug 281, plus a tiny PCL cleanup
Nikodemus Siivola [Wed, 11 May 2005 07:49:18 +0000 (07:49 +0000)]
0.9.0.27: fix bug 281, plus a tiny PCL cleanup
 * COMPUTE-EFFECTIVE-METHOD-COMBINATION for SHORT-METHOD-COMBINATION should
    not signal an error for a bogus qualifier, but merely return a form that
    takes care of the signalling later.
 * EWTF: ESETF cannot be an optimization anymore, if it ever was.