sbcl-cvs-import.git
5 years ago0.9.10.46.lutex-branch.45: lutex-branch
Juho Snellman [Sat, 3 Jun 2006 11:28:31 +0000]
0.9.10.46.lutex-branch.45:
Fix build on Linux with SB-THREAD without SB-LUTEX.

5 years ago0.9.12.26.lutex-branch.44
Cyrus Harmon [Thu, 1 Jun 2006 04:35:17 +0000]
0.9.12.26.lutex-branch.44
   * unfiy the :restore-tls-segment-register-from-tls and
     :restore-segment-register-from-tls by changing both to
     :restore-fs-segment-register-from-tls. Restores MacOS
     buildability.

5 years ago0.9.10.46.lutex-branch.43:
Juho Snellman [Thu, 1 Jun 2006 00:07:52 +0000]
0.9.10.46.lutex-branch.43:
Restore non-SB-THREAD buildability.

5 years ago0.9.12.26.lutex-branch.42:
Juho Snellman [Wed, 31 May 2006 23:21:12 +0000]
0.9.12.26.lutex-branch.42:
        * Fix saving purified cores with lutexes
* Clean up remnants of the original semaphore-based lutex implementation
        * Automatically set the right features for lutex-using platforms
          in make-config.sh
        * Remove restoration of %fs from the signal context (obsoleted earlier
          by restoring it from TLS)
        * Other minor cleanups

5 years ago0.9.12.26.lutex-branch.41
Cyrus Harmon [Sun, 21 May 2006 18:33:08 +0000]
0.9.12.26.lutex-branch.41
    * go ahead and scavenge the interrupt context, not just the
      registers, on Darwin. I'm not sure if this right, but it follows
      the logic of the other ports.
    * removed os_sem_t declarations
    * update x86-darwin-threads internals-note
    * removed -framework CoreServices #ifdef stuff in Config.x86-darwin
    * removed last traces of CARBON_SEMAPHORES

5 years ago0.9.12.26.lutex-branch.40
Cyrus Harmon [Sun, 21 May 2006 01:04:41 +0000]
0.9.12.26.lutex-branch.40
    * When scavenging an interrupt_context on Darwin, use the
      os_context_register_addr (and .._pc_addr) macros for getting the
      address of the registers as these are not members of a struct
      member of the context itself, but rather are members of a struct
      pointed to by a pointer in the context. This fixes various
      GC-related memory corruption problems.
    * added lutex_assert and various thread_mutex_[un]lock assertions
    * define FREEABLE_STACK_QUEUE_SIZE and set it to 4 instead of
      hardcoding 8.
    * update x86-darwin-threads internals-note

6 years ago0.9.12.26.lutex-branch.39:
Juho Snellman [Thu, 18 May 2006 22:39:58 +0000]
0.9.12.26.lutex-branch.39:
        Quit pretending that lutexes are futexes, and implement the
        Lisp-side waitqueues and mutexes as thinner wrappers around the
        pthread equivalents.

6 years ago0.9.12.26.lutex-branch.38:
Juho Snellman [Thu, 18 May 2006 22:35:00 +0000]
0.9.12.26.lutex-branch.38:
        Restore Linux/Solaris lutex buildability.

6 years ago0.9.12.26.lutex-branch.37
Cyrus Harmon [Tue, 16 May 2006 21:13:46 +0000]
0.9.12.26.lutex-branch.37
    * free the freeable stacks with free_freeable_stacks and change an
      fprintf to an FSHOW.

6 years ago0.9.12.26.lutex-branch.36
Cyrus Harmon [Tue, 16 May 2006 20:44:12 +0000]
0.9.12.26.lutex-branch.36
   * Added a mutex lock for i386_set_ldt calls. Seems to fix kernel
     panics on Darwin. timer.impure.lisp now passes, but we still fail
     with some sort of memory corruption in threads.impure.lisp.

6 years ago0.9.12.26.lutex-branch.35
Cyrus Harmon [Tue, 16 May 2006 16:33:15 +0000]
0.9.12.26.lutex-branch.35
    * On Darwin, queue the thread stack to be freed so that the
      creating thread frees it the next time through, instead of
      having the new child thread free the previously freeable
      thread. This works around (?) a SIGILL we're catching somewhere,
      but still causes us to kernel panic, although we make it farther
      through the tests this way.

6 years ago0.9.12.26.lutex-branch.34
Cyrus Harmon [Tue, 16 May 2006 16:30:21 +0000]
0.9.12.26.lutex-branch.34
    * adding an #ifdef LISP_FEATURE_RESTORE_SEGMENT_REGISTER_FROM_TLS
      bit to restore %fs from pthread_getspecific(specials)

6 years ago0.9.12.26.lutex-branch.33
Cyrus Harmon [Mon, 15 May 2006 17:07:50 +0000]
0.9.12.26.lutex-branch.33
   * merging 0.9.12.26 changes onto the lutex branch

6 years agofile fopcompile.lisp was added on branch lutex-branch on 2006-05-15 17:07:51 +0000
Cyrus Harmon [Sat, 13 May 2006 17:20:04 +0000]
file fopcompile.lisp was added on branch lutex-branch on 2006-05-15 17:07:51 +0000

6 years ago0.9.11.45.lutex-branch.33:
Juho Snellman [Sat, 13 May 2006 16:32:13 +0000]
0.9.11.45.lutex-branch.33:
        (Déjà vu. Reapplying commit lost in the CVS outage.)

* Lutex finalization.
        * Some switches in gencgc were missing a case LUTEX_WIDETAG,
          causing mysterious GC crashes.

6 years ago0.9.11.45.lutex-branch.32
Cyrus Harmon [Sat, 22 Apr 2006 03:08:05 +0000]
0.9.11.45.lutex-branch.32
   * merging 0.9.11.45 changes onto the lutex branch

6 years ago0.9.10.46.lutex-branch.32
Cyrus Harmon [Fri, 21 Apr 2006 22:28:01 +0000]
0.9.10.46.lutex-branch.32
   * remove various semamphore (and Carbon and mach) includes that are
     no longer necessary

6 years ago0.9.10.46.lutex-branch.31:
Juho Snellman [Fri, 21 Apr 2006 14:06:53 +0000]
0.9.10.46.lutex-branch.31:
Fix a lutex bug where we would always broadcast condition variables
        instead of signalling them. Make lutex-branch self-buildable again.

6 years agofile mop-15.impure-cload.lisp was added on branch lutex-branch on 2006-04-22 03:08...
Cyrus Harmon [Thu, 20 Apr 2006 17:29:13 +0000]
file mop-15.impure-cload.lisp was added on branch lutex-branch on 2006-04-22 03:08:06 +0000

6 years agofile mop-14.impure-cload.lisp was added on branch lutex-branch on 2006-04-22 03:08...
Cyrus Harmon [Thu, 20 Apr 2006 14:25:45 +0000]
file mop-14.impure-cload.lisp was added on branch lutex-branch on 2006-04-22 03:08:06 +0000

6 years ago0.9.10.46.lutex-branch.30:
Juho Snellman [Mon, 10 Apr 2006 08:43:55 +0000]
0.9.10.46.lutex-branch.30:
Restore Linux/lutex buildability.

6 years ago0.9.10.46.lutex-branch.29:
Juho Snellman [Mon, 10 Apr 2006 07:49:50 +0000]
0.9.10.46.lutex-branch.29:
Implement lutexes as a pthread mutex + a pthread condition variable
        instead of as a semaphore. Do some slightly invasive restructuring
        at the same time.

        All tests seem to be passing on Solaris/x86, including the new
        waitqueue ones. (One test isn't really passing, since we still
        don't implement lutex finalization. It's just that this
        implementation strategy doesn't leak as much memory as the
        previous one, so creating 500000 lutexes is no longer
        sufficient to trigger the failure).

6 years ago0.9.10.46.lutex-branch.28:
Juho Snellman [Sun, 9 Apr 2006 01:23:09 +0000]
0.9.10.46.lutex-branch.28:
Thread support on Solaris/x86. Passes all thread tests, except those
        added in lutex-branch.27.

6 years ago0.9.10.46.lutex-branch.27:
Juho Snellman [Sun, 9 Apr 2006 00:20:39 +0000]
0.9.10.46.lutex-branch.27:
Add some tests that fail with :SB-LUTEX.

6 years ago0.9.10.46.lutex-branch.26
Cyrus Harmon [Sun, 9 Apr 2006 00:04:30 +0000]
0.9.10.46.lutex-branch.26
   * jsnell's thread waiters fixes, before we were always only waking
     one thread in condition-notify.
   * add waiters field to the waitqueue.
   * increment and decrement waiters as apporpriate.
   * remove ignorable n declaration in condition-notify.
   * wake the minimum of n or the number of waiting threads in
     condition-notify, instead of always just waking one thread.
   * minor whitespace fix.

6 years ago0.9.10.46.lutex-branch.25
Cyrus Harmon [Thu, 6 Apr 2006 23:02:01 +0000]
0.9.10.46.lutex-branch.25
   * In arrange_return_to_lisp_function, rework the way we call into
     lisp from a signal handler. Allocate a register save area and
     copy the registers there. Put a pointer to this save area in ECX
     and set the EIP to point to call_into_lisp_tramp.
   * Added call_into_lisp_tramp which builds a stack frame from the
     save area pointed to in ECX, frees the save area and calls
     call_into_lisp.

6 years agofile vector.impure.lisp was added on branch lutex-branch on 2006-04-22 03:08:06 ...
Cyrus Harmon [Thu, 6 Apr 2006 10:39:35 +0000]
file vector.impure.lisp was added on branch lutex-branch on 2006-04-22 03:08:06 +0000

6 years agofile win32-sockets.lisp was added on branch lutex-branch on 2006-04-22 03:08:08 ...
Cyrus Harmon [Thu, 6 Apr 2006 10:39:33 +0000]
file win32-sockets.lisp was added on branch lutex-branch on 2006-04-22 03:08:08 +0000

6 years agofile win32-constants.lisp was added on branch lutex-branch on 2006-04-22 03:08:08...
Cyrus Harmon [Thu, 6 Apr 2006 10:39:33 +0000]
file win32-constants.lisp was added on branch lutex-branch on 2006-04-22 03:08:08 +0000

6 years ago0.9.10.46.lutex-branch.24
Cyrus Harmon [Wed, 5 Apr 2006 06:29:17 +0000]
0.9.10.46.lutex-branch.24
    * make a 16-byte aligned stack frame in arrange_return_to_lisp_function
    * update x86-darwin-threads notes

6 years ago0.9.10.46.lutex-branch.23
Cyrus Harmon [Wed, 29 Mar 2006 17:25:41 +0000]
0.9.10.46.lutex-branch.23
    * remove extra #define SIG_RESUME_FROM_GC
    * make os_restore_fp_control be #ifdef LISP_FEATURE_FREEBSD for the moment
    * use #ifdef LISP_FEATURE_FREEBSD instead of __FreeBSD__ in x86-bsd-os.h

6 years ago0.9.10.46.lutex-branch.22
Cyrus Harmon [Wed, 29 Mar 2006 17:06:20 +0000]
0.9.10.46.lutex-branch.22
    * WARNING! This compiles and begins to work, but has caused a kernel
      panic on my 5.3 freebsd box. caveat user.
    * change some freebsd printfs to FSHOW_SIGNALs
    * on freebsd also, resotre the fp_control (cw) from the context
    * Add shared library build options fro freebsd in threads test

6 years ago0.9.10.46.lutex-branch.21
Cyrus Harmon [Wed, 29 Mar 2006 09:46:40 +0000]
0.9.10.46.lutex-branch.21
    * added os_restore_tls_segment_register to x86-bsd-os.h.

6 years ago0.9.10.46.lutex-branch.20
Cyrus Harmon [Wed, 29 Mar 2006 08:30:33 +0000]
0.9.10.46.lutex-branch.20
    * fix grovel-headers to build on freebsd
    * don't add SIGUSR1 and SIGUSR2 to deferrable signals on FreeBSD

6 years ago0.9.10.46.lutex-branch.19
Cyrus Harmon [Wed, 29 Mar 2006 07:55:22 +0000]
0.9.10.46.lutex-branch.19
    * remove debugging FSHOW that was breaking FreeBSD when #defined QSHOW

6 years ago0.9.10.46.lutex-branch.18
Cyrus Harmon [Wed, 29 Mar 2006 07:43:22 +0000]
0.9.10.46.lutex-branch.18
    * align stack to 16-bytes in arrange_return_to_lisp_function and skip padding
      in post_signal_tramp
    * updated bugs list and added debugging info for current blockers
    * lots of debugging FSHOWs (many of these can go away once things work)
    * restore buildability by adding missing #endif and #include "threads.h"
      in x86-darwin-os.c

6 years ago0.9.10.46.lutex-branch.17
Cyrus Harmon [Wed, 29 Mar 2006 07:19:31 +0000]
0.9.10.46.lutex-branch.17
    * preliminary support for building +:sb-thread and +:sb-lutex on FreeBSD
    * use #ifdef SIG_RESUME_FROM_GC instead of #ifdef LISP_FEATURE_DARWIN
      where appropriate
    * added FreeBSD
    * move futex_xxx functions from darwin-os.c to bsd-os.c
    * move arch_os_thread_init from bsd-os.c to x86-bsd-os.c and x86-darwin-os.c
      as appropriate and wrote FreeBSD i386_set_ldt-calling functions

6 years ago0.9.10.46.lutex-branch.16
Cyrus Harmon [Wed, 29 Mar 2006 01:04:48 +0000]
0.9.10.46.lutex-branch.16
    * Fix typo LISP_FEATURE_SB_MUTEX -> LISP_FEATURE_SB_LUTEX in
      grovel-headers.c

6 years ago0.9.10.46.lutex-branch.15
Cyrus Harmon [Tue, 28 Mar 2006 18:33:34 +0000]
0.9.10.46.lutex-branch.15
    * cleaning up lutex branch build for x86-64/linux
    * #ifdef clean up to look for semaphore.h when not building mach
      or carbon threads
    * make some printfs be FSHOWs
    * only define os_sem_t when building with threads on linux
    * include lutex.h instead of futex.h when building with threads on
      linux

6 years ago0.9.10.46.lutex-branch.14
Cyrus Harmon [Mon, 27 Mar 2006 19:45:16 +0000]
0.9.10.46.lutex-branch.14
    * align stack to 16-bytes in arrange_return_to_lisp_function and skip padding
      in post_signal_tramp
    * updated bugs list and added debugging info for current blockers
    * lots of debugging FSHOWs (many of these can go away once things work)

6 years ago0.9.10.46.lutex-branch.13
Cyrus Harmon [Sun, 26 Mar 2006 18:51:25 +0000]
0.9.10.46.lutex-branch.13
    * move {:mach,:carbon}-semaphores and :restore-tls-... into
      base-target-features.lisp-expr
    * conditional compilation fixes to avoid including things on
      -sb-thread builds that shouldn't be
    * whitespace fixes
    * added a fixme in thread.lisp

6 years ago0.9.10.46.lutex-branch.12
Cyrus Harmon [Sat, 25 Mar 2006 22:26:48 +0000]
0.9.10.46.lutex-branch.12
    * set initial semaphore value to 0
    * MP -> MPCreateSemaphore in FSHOW message
    * pin (thread-interruptions-lock thread) when calling futex-destroy
    * added internals-notes document x86-darwin-threads

6 years ago0.9.10.46.lutex-branch.11
Cyrus Harmon [Sat, 25 Mar 2006 21:20:00 +0000]
0.9.10.46.lutex-branch.11
    * Fix type SEMAHPORES -> SEMAPHORES

6 years ago0.9.10.46.lutex-branch.10
Cyrus Harmon [Sat, 25 Mar 2006 19:56:40 +0000]
0.9.10.46.lutex-branch.10
    * Set the %fs register to 0 before freeing the ldt or really
      bad things happen
    * Fix #ifdef in darwin-os.c
      LISP_FEATURE_CARBON_THREADS -> LISP_FEATURE_CARBON_SEMAPHORES

6 years ago0.9.10.46.lutex-branch.9
Cyrus Harmon [Sat, 25 Mar 2006 16:17:58 +0000]
0.9.10.46.lutex-branch.9
    * use
      LISP_FEATURE_RESTORE_TLS_SEGMENT_REGISTER_FROM_CONTEXT. Surely
      there's a better way.
    * Add optional support for Carbon semaphores instead of mach
      semaphores. Use :carbon-semaphores to turn on.
    * install SIG_RESUME_FROM_GC handler
    * send SIG_RESUME_FROM_GC instead of SIG_STOP_FOR_GC to tell
      threads to start running again.
    * Check to make sure that all threads have left the suspended
      state before unlocking all_threads_lock and going on our merry
      way.
    * move #define in thread.c out of function body for readability.
    * Add -framework CoreServices to build options when building with
      :carbon-semaphores
    * Add error checking on the i386_set_ldt call
    * Free the LDT at thread cleanup time
    * Make LDT stuff be #ifdef LISP_FEATURE_SB_THREAD
    * Changed signal numbers and added SIG_RESUME_FROM_GC
      (SIG_INTERRUPT_THREAD == SIGINFO, SIG_STOP_FOR_GC == SIGUSR1,
      SIG_RESUME_FROM_GC == SIGUSR2)
    * Treat SIG_RESUME_FROM_GC appropriately in interrupt.c

6 years ago0.9.10.46.lutex-branch.8
Cyrus Harmon [Sat, 25 Mar 2006 15:42:11 +0000]
0.9.10.46.lutex-branch.8
    * Add shared library compilation options for Darwin in
      tests/threads.impure.lisp

6 years ago0.9.10.46.lutex-branch.7
Cyrus Harmon [Sat, 25 Mar 2006 15:39:24 +0000]
0.9.10.46.lutex-branch.7
    * We need to pin the lutex in addition to the mutex when calling
      futex-wake, futex-wait, etc...
    * Call futex-destroy on lutexes when we are done with them. Note
      that the lutex and the mutex need to be pinned and it is not at
      the moment.

6 years ago0.9.10.46.lutex-branch.6:
Nathan Froyd [Thu, 23 Mar 2006 04:21:17 +0000]
0.9.10.46.lutex-branch.6:
Minor code cleanups.
... make sure the widetags don't get renumbered on #!-sb-lutex.
... use os_restore_tls_segment_register where appropriate.

6 years ago0.9.10.46.lutex-widetag.5:
Nathan Froyd [Thu, 23 Mar 2006 03:57:35 +0000]
0.9.10.46.lutex-widetag.5:
        Fix things so the death of the second thread to exit doesn't hose
          the system.
        ... use pthread_attr_setstack on Darwin, too (I used the separate
            size/addr variants before I figured out the stack needed to
            be page-aligned...it never occurred to me to check the
            semantics of the replacement functions to ensure they'd do
            what I thought they did...caveat coder).

6 years ago0.9.10.46.lutex-branch.4
Cyrus Harmon [Wed, 22 Mar 2006 23:41:23 +0000]
0.9.10.46.lutex-branch.4
    * Fix OOAO violations of restoring the segment register. Add
      os_restore_tls_segment_register inline function and call where
      appropriate.
    * Sprinkle in some more calls to restore %fs
    * Some #ifdefs to make sure things don't get included twice
    * install interrupt_thread_handler and sig_stop_for_gc_handlers
    * use sel_t to specify bitfields for ldt struct instead of doing
      this by hand
    * add some debugging noise

6 years ago0.9.10.46.lutex-branch.3
Cyrus Harmon [Wed, 22 Mar 2006 23:20:52 +0000]
0.9.10.46.lutex-branch.3
    * Make the lutex stuff in purify.c be #ifdef LISP_FEATURE_SB_LUTEX

6 years ago0.9.10.46.lutex-branch.2
Cyrus Harmon [Tue, 21 Mar 2006 21:29:12 +0000]
0.9.10.46.lutex-branch.2
    * make purify deal with LUTEX_WIDETAG objects

6 years ago0.9.10.46.lutex-branch
Cyrus Harmon [Tue, 21 Mar 2006 19:27:57 +0000]
0.9.10.46.lutex-branch
    * Thread and lutex support on MacOS X on Intel
    * NJF's lutex work
    * x86-darwin support for TLS using %fs
    * More detailed description of the changes required to support
      threads and lutexes will appear when this gets merged onto
      the HEAD.

6 years ago0.9.10.46 lutex-branch-original-base
Rudi Schlatte [Tue, 21 Mar 2006 15:51:51 +0000]
0.9.10.46
    Commit sbcl-devel "WIN32 patch v.2. - part1 v.2."
    ... get default-external-format via api calls on win32

6 years ago0.9.10.45:
Christophe Rhodes [Mon, 20 Mar 2006 18:01:38 +0000]
0.9.10.45:
Move the dynamic space down a tiny bit on ppc/linux, since some
kernels map the stack at the end of our heap.

6 years ago0.9.10.44:
Nathan Froyd [Mon, 20 Mar 2006 02:49:16 +0000]
0.9.10.44:
Apply Alastair Bridgewater's "Small inefficiency in tl-symbol-value
          access" patch, sbcl-devel 11-02-2006.
... take care of cases in {c-call,cell}.lisp too.

6 years ago0.9.10.43
Gabor Melis [Fri, 17 Mar 2006 17:31:29 +0000]
0.9.10.43
  * add type constraint to variables in the consequent in situations
    similar to (IF (EQL X (LENGTH Y)) ...), where X is of type INDEX.

6 years ago0.9.10.42:
Christophe Rhodes [Fri, 17 Mar 2006 15:34:51 +0000]
0.9.10.42:
In this exciting world of Windows support, we might have files
named *.FASL not found by a find for *.fasl.
... and, argh, -iname is a GNUism.  Try harder to delete things
in contrib/ anyway.
... tidy up asdf-stub.lisp while I'm at it.

6 years ago0.9.10.41:
Juho Snellman [Thu, 16 Mar 2006 18:57:17 +0000]
0.9.10.41:
Kill the silly *NAME->CLASS->SLOTD-TABLE* PCL cache.

        * Remove the code that updated the table
        * Rewrite the only user of the data stored in the table
          (MAKE-ACCESSOR-TABLE) to recompute it from scratch each time
        * Which actually ends up being faster than using the table,
          speeding the loading of CLOS-using FASLs a bit
        * Reduce core size by a 900 kB on x86-64

6 years ago0.9.10.40:
Christophe Rhodes [Thu, 16 Mar 2006 14:04:59 +0000]
0.9.10.40:
Fix unithreaded build (and incidentally a potential heap
corruption on purify, given a sufficiently small struct thread
or a sufficiently large UNBOUND_MARKER_WIDETAG)
... #ifdef LISP_FEATURE_SB_THREAD the offending code.

6 years ago0.9.10.39:
Christophe Rhodes [Thu, 16 Mar 2006 12:01:07 +0000]
0.9.10.39:
Implement and document SB-EXT:*CORE-PATHNAME*.
... communicate from runtime via SB-INT:*CORE-STRING*, rather
than constructing a pathname in C.

Related refactoring.
... since OS-COLD-INIT-OR-REINIT has exactly the same
functionality on all currently supported platforms,
move it into a common file;
... define common *common-static-symbols* and
*c-callable-static-symbols* for use in constructing
the per-backend *static-symbols* list, and to remove
the need for maintaining a separate list of callable
symbols in genesis.

6 years ago0.9.10.38:
Juho Snellman [Thu, 16 Mar 2006 03:24:13 +0000]
0.9.10.38:
        Add #\Uxxxx and #\Uxxxxxxxx read-syntax for characters. Make all
        characters readably printable even on non-Unicode streams. Patch by
        Robert Macomber (sbcl-devel "Unicode character names", 2006-03-06).

        * Also add a test.

6 years ago0.9.10.37:
Juho Snellman [Wed, 15 Mar 2006 17:48:25 +0000]
0.9.10.37:
The recent changes to LISTEN caused it to sometimes return NIL
        even when there was data already in the input buffer. Fix it.

6 years ago0.9.10.36:
Juho Snellman [Wed, 15 Mar 2006 14:25:29 +0000]
0.9.10.36:
Fix occasional test failures reported by Cyrus Harmon. RUN-PROGRAM
        sets up a signal handler which interferes with the test framework,
        so it needs to be run as an impure test.

6 years ago0.9.10.35
Cyrus Harmon [Wed, 15 Mar 2006 05:39:53 +0000]
0.9.10.35
    Removing DOLLARLITERAL and GNAMEDOLLAR macro cruft from
    x86-assem.S.
    Add generated {x86,ppc}-darwin files to src/runtime/.cvsignore.

6 years ago0.9.10.34
Cyrus Harmon [Wed, 15 Mar 2006 04:59:20 +0000]
0.9.10.34
    Fix disassembly of break-containing functions on Darwin
    ... switch on (word-imm-code chunk dstate) instead of
        byte-imm-code under Darwin
    ... whitespace to make word-imm match byte-imm

6 years ago0.9.10.33:
Juho Snellman [Wed, 15 Mar 2006 04:21:03 +0000]
0.9.10.33:
Fix CL:LISTEN to always return NIL at EOF, as required by
        CLTS.  (Patch by Stephen Compall on sbcl-devel "Re: fd-stream
        listen in fd-stream-misc-routine")

        (Also "oops". I somehow attributed 0.9.10.32 to the wrong James).

6 years ago0.9.10.32:
Juho Snellman [Wed, 15 Mar 2006 04:03:26 +0000]
0.9.10.32:
Make the streams created by RUN-PROGRAM bivalent. Patch by
        James Bielman on sbcl-devel, except:

        * Also bivalentify (bivalenticate? bivalentize?) the PTY stream
        * Add a test

6 years ago0.9.10.31
Cyrus Harmon [Wed, 15 Mar 2006 03:04:34 +0000]
0.9.10.31
    Fix Darwin instability problems. Darwin isn't reliably firing
    SIGTRAP handlers, so use UD2 to generate a SIGILL instead of INT3
    to generate a SIGTRAP and we check for this in the SIGILL handler
    and DTRT if we see this by calling the sigtrap_handler
    ... Define TRAP that uses UD2 (0x0b0f or 0F 0B) instead on Darwin
        and INT3 elsewhere in x86-assem.S
    ... Removed the bogus sigaltstack (was Darwin only, now gone) in
        bsd-os.c that I added in the course of trying to fix this
        problem
    ... #+darwin use UD2 instead of INT3 in compiler/x86 and add
        support for disassembling this as break

6 years ago0.9.10.30:
Cyrus Harmon [Wed, 15 Mar 2006 03:01:46 +0000]
0.9.10.30:
    Fix Darwin instability problems. Darwin isn't reliably firing
    SIGTRAP handlers, so use UD2 to generate a SIGILL instead of INT3
    to generate a SIGTRAP and we check for this in the SIGILL handler
    and DTRT if we see this by calling the sigtrap_handler
    ... Define TRAP that uses UD2 (0x0b0f or 0F 0B) instead on Darwin
        and INT3 elsewhere in x86-assem.S
    ... Removed the bogus sigaltstack (was Darwin only, now gone) in
        bsd-os.c that I added in the course of trying to fix this
        problem
    ... #+darwin use UD2 instead of INT3 in compiler/x86 and add
        support for disassembling this as break

6 years ago0.9.10.30
Rudi Schlatte [Tue, 14 Mar 2006 22:23:14 +0000]
0.9.10.30
    Unbreak the build (thanks to Eric Marsden for the quick patch)

6 years ago0.9.10.29
Rudi Schlatte [Tue, 14 Mar 2006 12:27:46 +0000]
0.9.10.29
    Linkage tables on win32
    ... heuristically choose a memory range ("does not break on my two
        systems, let's ship it")
    ... added some leftovers to cleanup.sh
    ... also #!+sb-doc-conditionalize docstrings in run-program.lisp

6 years ago0.9.10.28
Rudi Schlatte [Sat, 11 Mar 2006 19:10:23 +0000]
0.9.10.28
  Document run-program
  ... reformat docstring slightly so the texinfo formatter won't get
      confused
  ... add documentation for the various process struct accessors

6 years ago0.9.10.27:
Christophe Rhodes [Fri, 10 Mar 2006 17:40:27 +0000]
0.9.10.27:
Fix a typep / classoid / finalize-inheritance bug that was
exposed by removing the class-predicate (which meant that
classes were finalized in a different order).
... always update subclasses when we update a parent class.  No,
I don't know why (either Gerd's code or this
modification)
... test case

6 years ago0.9.10.26
Gabor Melis [Thu, 9 Mar 2006 13:05:22 +0000]
0.9.10.26
  * fixed endless loop on (SUBTYPEP NULL (OR UNK0 UNK1)) in the cross compiler

6 years ago0.9.10.25:
Juho Snellman [Thu, 9 Mar 2006 12:58:44 +0000]
0.9.10.25:
Port dynamic-extent vector support from x86 to x86-64.

6 years ago0.9.10.24:
Christophe Rhodes [Wed, 8 Mar 2006 18:49:54 +0000]
0.9.10.24:
Fix (I think) the %INSTANCE-REF build problems on PPC and
probably SPARC.
... the CTYPE-OF failure came about because the system didn't
know that (AND INSTANCE FUNCTION) was NIL.  Make it
so...
... and then delete a stale KLUDGE workaround in primtype.lisp
... this then built as far as stream.lisp, where the problem
was that (AND INSTANCE STREAM) was being "simplified"
to just STREAM, and then primtype didn't know that
STREAMs are subtypes of INSTANCE...
... which in fact they're not; CLOS allows us to construct
funcallable streams.  So...
... instead teach the system that (AND INSTANCE STREAM)
shouldn't be simplified...
... but (AND INSTANCE FD-STREAM) should.
... (also delete some crufty classoids: BASIC-STRUCTURE-CLASS
and FUNCALLABLE-STRUCTURE-CLASS were never used)
... tests for all the failing things in type.{before,after}-xc

6 years ago0.9.10.23:
Nathan Froyd [Tue, 7 Mar 2006 22:11:51 +0000]
0.9.10.23:
Unify the FOO and FOO-C VOPs in DEFINE-FULL-{REFFER,SETTER} on x86.
  Saves ~100K in core file size.

6 years ago0.9.10.22:
Nathan Froyd [Tue, 7 Mar 2006 19:06:41 +0000]
0.9.10.22:
        Remove spurious VOPs for translating %INSTANCE-{REF,SET}.
        ... These VOPs were based on SLOT-{REF,SET} and in all ports
            there were also translations based on DEFINE-FULL-REFFER or
            WORD-INDEX-REF.  However, at the very least, the
            %INSTANCE-SET VOP based on SLOT-SET was bogus, as it did not
            return a value, thereby generating incorrect code.
            Therefore, this VOP was either disabled (#+nil) or the
            alternative via DEFINE-FULL-REFFER was carefully defined
            with a lower :GENERATOR cost so that the VOP based on
            SLOT-SET would never be called.  This patch eliminates such
            magic and eliminates the corresponding %INSTANCE-REF VOP as
            well, since it does not appear to have any advantages over
            the one created via DEFINE-FULL-REFFER.
        ... See also sbcl-devel, 2002-02-11, "Dubious VOPs".  This patch
            does not implement the DEFINE-VOP magic discussed in the
            email.

6 years ago0.9.10.21:
Nathan Froyd [Tue, 7 Mar 2006 18:47:37 +0000]
0.9.10.21:
Add CMOV micro-optimization in GENERATE-CALL-SEQUENCE, too.

6 years ago0.9.10.20:
Christophe Rhodes [Tue, 7 Mar 2006 12:04:24 +0000]
0.9.10.20:
Move the stub definitions for contrib-type stuff into the
main runtime
... and don't build unix-dsos in contribs any more;
... should make binary distribution easier.

6 years ago0.9.10.19:
Christophe Rhodes [Tue, 7 Mar 2006 07:34:15 +0000]
0.9.10.19:
Add Alastair Bridgewater's chapter about calling conventions

6 years ago0.9.10.18:
Nathan Froyd [Mon, 6 Mar 2006 21:20:28 +0000]
0.9.10.18:
Micro-optimize DEFAULT-UNKNOWN-VALUES on x86{,-64} by using CMOV
... guard it with *BACKEND-SUBFEATURES* on the x86.

6 years ago0.9.10.17: fix bug #400, aka more correct CONSTANTP
Nikodemus Siivola [Mon, 6 Mar 2006 17:48:10 +0000]
0.9.10.17: fix bug #400, aka more correct CONSTANTP
 * To know that a function call is a constant we need to check that
    it doesn't signal an error in addition to knowing that the function
    is foldable.
 * To know that a THE form is constant we need to check that the
    value is of the right type and be prepared to deal with malformed
    type specifiers.
 * Tests, tests, tests.

 ...all in all, I'm starting to miss the evaluator branch.

6 years ago0.9.10.16:
Cyrus Harmon [Mon, 6 Mar 2006 09:59:33 +0000]
0.9.10.16:
    x86/Darwin support
    ... Add Config support and ape the darwin/ppc space fixup stuff.
    ... Align stack to 16-bytes as per ABI in %alien-funcall,
        c-call and show.
    ... Add darwin space params.
    ... Use an altstack for handling signals in hopes of giving signal
        handlers properly aligned stacks.
    ... Get registers and flags out of the mcontext properly. Needed
        to play some games to get sys/_types included in order to get
        the full definition of the mcontext struct which Apple tries
        to hide from us.
    ... Moved os_get_runtime_executable_path from ppc-darwin-os.c to
        new file darwin-os.c.
    ... Fix debugging #ifdefs in runtime.h
    ... #define hacks to x86-assem.S to keep Apple's brain-dead
        assembler happy. In particular, it doesn't like things like
        $NIL, so I had to play some games with the precompiler to make
        it happy, and it wants .globl instead of .global. Also fixed a
        couple raw .aligns that should have used the macros
    ... Align stack in ppc-assem.S:call_into_c
    ... Added x86-darwin-os.h
    ... #- out debug.impure test that causes bad things to happen on
        darwin/ppc as it seems to cause bad things on x86/darwin as
        well.
    ... adjust fails for float tests
    ... LDSO stubs for x86/darwin

6 years agoOops.
Alexey Dejneka [Mon, 6 Mar 2006 04:35:50 +0000]
Oops.

6 years ago0.9.10.15:
Alexey Dejneka [Mon, 6 Mar 2006 04:33:26 +0000]
0.9.10.15:
        Fix typo in (defconstant m-v-prog1); partially fix the bug
        in constant-folding reported by Paul F. Dietz in "New compiler
        bugs", sbcl-devel 2006-03-05.

6 years ago0.9.10.14:
Juho Snellman [Sat, 4 Mar 2006 21:45:33 +0000]
0.9.10.14:
Kill some dead code.

6 years ago0.9.10.13:
Juho Snellman [Sat, 4 Mar 2006 21:12:06 +0000]
0.9.10.13:
        Remove the x87 instruction definitions from the x86-64 backend for
        a significant core file size reduction. Patch by Lutz Euler.

6 years ago0.9.10.12:
Juho Snellman [Sat, 4 Mar 2006 21:07:48 +0000]
0.9.10.12:
The error branch in the win32 DLOPEN-OR-LOSE was calling
        SHARED-OBJECT-SAP instead of SHARED-OBJECT-HANDLE. (Patch from
        by Yaroslav Kavenchuk, sbcl-devel "Re: Where define shared-object-sap"
        on 2006-02-26).

6 years ago0.9.10.11:
Christophe Rhodes [Sat, 4 Mar 2006 19:58:26 +0000]
0.9.10.11:
Merge patch (Alastair Bridgewater 2006-02-06 / CSR 2006-03-03)
implementing a better calling convention on the x86 (and
probably a better one on the x86-64).
... increment fasl version, because mixing calling conventions
is a spectacular no-no.
... take this opportunity to put :gencgc on
*features-potentially-affecting...*, since mixing
gencgc and cheney allocation strategies on the ppc
is also a spectacular no-no.

6 years agoIn aliencomp.c #+(and ppc darwin) should be #!+(and ppc darwin), which
Cyrus Harmon [Thu, 2 Mar 2006 05:21:16 +0000]
In aliencomp.c #+(and ppc darwin) should be #!+(and ppc darwin), which
allows ppc builds to be able to cross-compile to other
architectures. This bug was originially introduced by yours truly in
the process of bringing the VOPs in question and this call to the over
from CMUCL.

6 years ago0.9.10.9:
Christophe Rhodes [Wed, 1 Mar 2006 09:10:32 +0000]
0.9.10.9:
Another try at the COPY-MORE-ARGS microoptimization, which was
in fact reverted inadvertantly by the ppc/gencgc merge.
... this time, schedule the instructions by hand to try to
avoid a stall.
... (whitespace.  *sigh*.)

6 years ago0.9.10.8:
Christophe Rhodes [Tue, 28 Feb 2006 14:22:54 +0000]
0.9.10.8:
Maybe fix some gc problems on ppc/gencgc?
... there's a workaround for non-descriptors in descriptor
registers which was previously !GENCGC but in fact should
have been !CONSERVATIVE or possibly !PARTITIONED_REGISTERS.
... whitespace in target-char.lisp

6 years ago0.9.10.7: oops. re-version last
Nikodemus Siivola [Tue, 28 Feb 2006 05:01:20 +0000]
0.9.10.7: oops. re-version last

6 years ago0.9.10.6: fix non-unicode build
Nikodemus Siivola [Tue, 28 Feb 2006 04:58:55 +0000]
0.9.10.6: fix non-unicode build
 ...I was _sure_ I'd tested this...

6 years ago0.9.10.6:
Juho Snellman [Tue, 28 Feb 2006 04:47:50 +0000]
0.9.10.6:
        Restore the old behaviour of never using mmap-tricks for memory
        zeroing on Solaris/gencgc, since doing so was causing GC crashes
        on Solaris/x86.

        Also some whitespace canonicalization.

6 years ago0.9.10.5: correct CONSTANTP
Nikodemus Siivola [Mon, 27 Feb 2006 15:03:08 +0000]
0.9.10.5: correct CONSTANTP
 * fix thinko in interactions between PROGV & IF and add a test to catch
    it.

6 years ago0.9.10.4: better CONSTANTP
Nikodemus Siivola [Mon, 27 Feb 2006 13:12:34 +0000]
0.9.10.4: better CONSTANTP
 * Recognizes constant argument calls to foldable functions and also
    deals with some simple special forms like.
 * Replace a ton of EVAL calls with CONSTANT-FORM-VALUE.

6 years ago0.9.10.3: Faster function calls via constant symbols
Nikodemus Siivola [Mon, 27 Feb 2006 11:07:31 +0000]
0.9.10.3: Faster function calls via constant symbols
 * Compile (FUNCALL 'FOO) as (FUNCALL (SB-C::GLOBAL-FUNCTION FOO))
    which is like (FUNCALL (FUNCTION FOO)) except that inline
    functions are not expanded and the lexical functions are ignored.