Switch branches/tags
Commits on Feb 3, 2009
Commits on Jan 26, 2009
  1. Do explicit sign-extension of small signed alien return va…

    jsnell committed Jan 26, 2009
            * gcc 4.3 has a different interpretation of the ABI, and
              zero-extends signed chars, shorts and (on x86-64) ints.
Commits on Jan 21, 2009
  1. Fix regression with enums in structs.

    csrhodes committed Jan 21, 2009
    This is not the most elegant of fixes, but arrange to return the old
    structure where applicable, and make incompatible mentions cause a
    CERROR with clobber continue semantics, to parallel what I think is the
    logic in the union/struct case.
Commits on Jan 17, 2009
  1. SB-BSD-SOCKETS workingness from saved cores on Windows

    nikodemus committed Jan 17, 2009
     * Need to call WSA-STARTUP on init.
     * Reported by Stephen Westfold, fix by Rudi Schlatte.
  2. handle IO errors in LDB and when saving the core

    nikodemus committed Jan 17, 2009
     * In LDB, if users response cannot be read, assume y.
     * Check fwrite() called when saving the core, and report the error.
     * Patch by Daniel Lowe.
Commits on Jan 16, 2009

    nikodemus committed Jan 16, 2009
    …ot unbound
     * It's :EXPECTED-TYPE, not :TYPE. ...having compiler check calls to ERROR like
       this would be nice.
     * Marginally better test to catch this.
Commits on Jan 15, 2009
  1. DEFTYPE to accept bodies consisting a single symbol

    nikodemus committed Jan 15, 2009
     * Regression from, reported by Ariel Badichi.
Commits on Jan 14, 2009
  1. fix bug 235a

    nikodemus committed Jan 14, 2009
       the functional only if policy matches.
Commits on Jan 12, 2009
  1. add necessary disambiguating curly braces to runtime

    nikodemus committed Jan 12, 2009
     * When QSHOW is undefined FSHOW(...) expands into nothing, leading to unexpected
       results for code like
         if (gencgc_verbose)
       as the conditional will then apply to the next syntactic element.
     * Patch by Daniel Lowe.
  2. fix regression from

    nikodemus committed Jan 12, 2009
     * TNs with KIND :CONSTANT don't have leaves if they represent load
       time values.
     * Reported by Attila Lendvai.
  3. mutex changes

    Gabor Melis
    Gabor Melis committed Jan 12, 2009
    - do what a FIXME suggests and rename MUTEX-VALUE to MUTEX-OWNER
    - in the process, make sure that the value returned is less stale
    - keep MUTEX-VALUE around for compatibility for a while
    - also add HOLDING-MUTEX-P
    - to make MUTEX-OWNER and HOLDING-MUTEX-P useful make unithread builds
      keep track of the owner of mutex
  4. improve test scripts

    Gabor Melis
    Gabor Melis committed Jan 12, 2009
    - robustify even more
    - fix the same bug related to $! in
    - make condition-wait-sigcont.lisp work unithread builds
  5. full raw-instance-slot support on HPPA

    nikodemus committed Jan 12, 2009
     * Patch by Larry Valkama.
  6. don't print the array object when reporting index out of b…

    nikodemus committed Jan 12, 2009
     * Report the type of the array instead, and encapsulate the array object in the
       condition object so that it can still be inspected manually.
     * Suggested by Stas Boukarev.
Commits on Jan 11, 2009
  1. Flag-setting VOPs on x86[-64] and conditional moves

    pkhuong committed Jan 11, 2009
     * Most :CONDITIONAL VOPs only specify which condition flags they set
     * GENERIC-{EQL,=,<,>} are :CONDITIONAL VOPs, but don't show up as
       calls anymore
     * Values may be selected with CMOVcc if applicable (and :CMOV is
       in *backend-subfeatures*, for x86):
        - Values that are represented, unboxed, in GPRs are CMOVed using
          custom VOPs
        - Unboxed float and complex types aren't converted
        - Other types are assumed to be boxed and CMOVed as descriptors
     * A test to try and to cover an interesting cross-section of flags
       and values to move conditionally.
  2. IR2: additional representation for predicates, conditional…

    pkhuong committed Jan 11, 2009
    … moves
     * :CONDITIONAL VOPs can now specify how to interpret the test
       they compute without performing the branch directly. How the
       test is specified is completely platform-dependent and only
       affects new-style :CONDITIONAL VOPs and a new BRANCH-IF VOP
     * Candidates for conversion to conditional moves are found
       and may be converted, depending on CONVERT-CONDITIONAL-MOVE-P,
       a new VM support routine. C-C-M-P returns NIL to punt on the
       conversion, or 5 values:
        1. name of the VOP to use
        2. TN for the first argument (NIL if none)
        3. TN for the second argument (NIL if none)
        4. TN for the result
        5. A list of info data, which will be appended to the flags
       The correct values will be MOVEd in the argument TNs if needed
       before computing the condition, and the result MOVEd to the right
       TN after the conditional move VOP.
  3. fix bug 316075

    nikodemus committed Jan 11, 2009
     * In DEFINE-ALIEN-ROUTINE, if the return-type is VOID, don't return
       the result of ALIEN-FUNCALL but a literal NIL instead.
  4. undo parts of

    Gabor Melis
    Gabor Melis committed Jan 11, 2009
    No need for memory barriers when unlocking a spinlock on x86/x86-64.
    The ordering rules and the cache coherency mechanism together
    guarantee this. However, the compiler must be prevented from
    reordering instructions with the unlock (at least in one direction).
    This is now done in the runtime, but not in Lisp as the Lisp compiler
    does no reordering.
  5. robustify some more

    nikodemus committed Jan 11, 2009
     * Missed --no-userinit --no-sysinit --disable-debugger, causing it to
       fail for some setups.
Commits on Jan 10, 2009
  1. fixed and tested some more cleanups on hppa-hpux

    nikodemus committed Jan 10, 2009
     * Fix a stray #+ -> #!+.
     * Removed unneeded nops.
     * Explanation of magic numbers (but not yet substituted.)
       (Above changes in patch by Larry Valkama)
     * Fix a bunch of comments in the HPPA backend to use the right number
       of semicolons, and use FIXME-lav instead of FIX-lav to mark things
       (better grepping for the rest of us.)
Commits on Jan 9, 2009
  1. make unbind in the runtime zero the value of the binding

    Gabor Melis
    Gabor Melis committed Jan 9, 2009
    ... to parallel what the Lisp side does. As far as I see the rationale
    for doing that (in doc/internals/specials.texinfo) does not apply here
    since signals are blocked when the dynbind functions are called. That
    said, instead of adding documentation let's fix it.
  2. target-thread cosmetics

    Gabor Melis
    Gabor Melis committed Jan 9, 2009
    - in the docstring of CONDITION-NOTIFY document that the mutex must be held
    - remove and explain fixme in CONDITION-WAIT
    - respect 80 char limit
    - use ; ;; ;;; and ;;;; where appropriate
    - fill the comment paragraphs
    - add form feeds (^L) to separate pages
  3. fix release spinlock

    Gabor Melis
    Gabor Melis committed Jan 9, 2009
    Both in the runtime and in Lisp releasing a spinlock was a simple
    assignment. That doesn't work because the new value may not make it to
    main memory by the time another CPU wants to acquire it making it
    needlessly slow. Worse, it also allows the CPU to reorder instructions
    from the critical section after the release.
    There is a spinlock implementation for MIPS in the runtime, but it's
    not used as we don't have threads on that platform. I don't know if
    it's broken too.
  4. add volatile after asm in spinlock and swap_lispobjs

    Gabor Melis
    Gabor Melis committed Jan 9, 2009
    ... to prevent the compiler from optimizing away certain calls or
    maybe reorder them. Test for swap_lispobj.
Commits on Jan 8, 2009
  1. fix

    Gabor Melis
    Gabor Melis committed Jan 8, 2009
    ... so that it doesn't leave stray sbcl child processes around and it
    actually tests what it wants to test.
Commits on Jan 5, 2009
  1. fix alien struct struct member offset bug

    csrhodes committed Jan 5, 2009
    No-one uses struct struct members, right?  Well, academics are
    notoriously bad at keeping up to dat with good practice...
Commits on Jan 4, 2009
  1. mudball of VOP updates for HPPA

    nikodemus committed Jan 4, 2009
     * Based on a mix of the old hppa-code and the mips backend.
     * Patch by Larry Valkama.
  2. call stub needed to switch between hpux heap-spaces

    nikodemus committed Jan 4, 2009
     * Patch by Larry Valkama.
  3. misc HPPA & HPUX updates

    nikodemus committed Jan 4, 2009
     * "To make it compile and run".
     * Config.hppa-hpux missed from
     * Patch by Larry Valkama.
Commits on Jan 3, 2009
  1. COMPILE-TIME reports timings at millisecond accuracy

    nikodemus committed Jan 3, 2009
     * Patch by Luis Oliveira.
  2. new HPUX specific files

    nikodemus committed Jan 3, 2009
     * Also more separation of linux stuff versus common stuff (hpux vs linux).
     * Patch by Larry Valkama.
  3. grab-bag of fixes to make hpux-os smile

    nikodemus committed Jan 3, 2009
     * Patch by Larry Valkama.
  4. updates on how we deal with fixup on HPPA

    nikodemus committed Jan 3, 2009
     * Patch by Larry Valkama.
  5. contrib fixes for HPPA

    nikodemus committed Jan 3, 2009
     * Fix or disable what breaks in contribs, so not everything breaks.
     * Patch by Larry Valkama.