Switch branches/tags
Commits on Jul 30, 2008
  1. disable failing test in timer.impure.lisp

     * Has been failing intermittently on various platforms, apparently as
       long as it has been there. Log as bug #428.
    nikodemus committed Jul 30, 2008
  2. documentation tweaks

     * Mention putative buildability on Win64 in NEWS.
     * Weak hash tables are supposed to work, don't say otherwise on the
     * Tweak README: mention INSTALL first. Manual lives in doc/manual
       nowadays, INSTALL tells how to build it.
    nikodemus committed Jul 30, 2008
Commits on Jul 27, 2008
  1. Add NEWS entry and manual entry for SB-EXT:*MUFFLED-WARNIN…

    Richard M Kreuter committed Jul 27, 2008
Commits on Jul 22, 2008
  1. fix DEFSTRUCT compilation when init-form type is vague

     * Reported by Josh Morrison. Regression from the recent DEFSTRUCT
       constructor hacking.
       Slots initialized by constructor lambda-list arguments have their
       types checked, but those slots always initialized directly by the
       initform values did not -- wrap the DSD-DEFAULT in a THE.
    nikodemus committed Jul 22, 2008
Commits on Jul 20, 2008
  1. explain why DX value generators must end their blocks

     * Explanation and test-case from Alexey Dejneka -- mistakes are mine in the
     * Note about REFs to DX closures violating the rule -- which is why we cannot
       assert it right now.
     * Use DO-USES instead of DOLIST in UPDATE-UVL-LIVE-SETS.
     * Fix a stray typo in comment in USE-GOOD-FOR-DX-P.
    nikodemus committed Jul 20, 2008
Commits on Jul 19, 2008
  1. tweak stack allocation on x86 and x86-64

     * Use MAYBE-PSEUDO-ATOMIC in the LIST-OR-LIST* VOP: stack allocation
       doesn't need PA.
     * When using STACK-ALLOCATE-P parameter with ALLOCATION, also pass in
       the lowtag. This allows us to generate
       instead of
       for stack allocation & tagging.
       On x86-64 can use the same trick in the inline path for heap
       allocation as well.
    nikodemus committed Jul 19, 2008
  2. lift node-insertion logic from RECOGNIZE-DYNAMIC-EXTENT-LVARS

     * New function INSERT-NODE-BEFORE, makes the action easier to
       understand by separating out the entry/cleanup creation from the
       flow-graph hacking.
    nikodemus committed Jul 19, 2008
  3. ALL calls with DX arguments should end their blocks

     * Consider this a clarification of MAP-BLOCK-NLXES will
       miss calls that don't end their blocks.
       If let-conversion happens, as is the case most of the time, this is
       not an issue, since the LAMBDA-CALL-LEXENV will hold the lexenv
       with the cleanup.
       A :LET functional, however, should never appear in
       RECOGNIZE-DYNAMIC-EXTENT-LVARS, since let-conversion doesn't happen
       until later -- so the conditional was bogus.
       So: delete the conditional, and write a comment that points in
       the place where we depend on the block-endingness.
     * Add a FIXME note to another DX related place where we make nodes
       end their blocks, which I don't quite understand.
    nikodemus committed Jul 19, 2008
Commits on Jul 18, 2008
  1. DX arguments in non-let-converted local calls

     * When a non-let function has dynamic extent arguments, the
       combination must end its block, or stack analysis will miss the
       cleanup, and stack will be popped too soon.
    nikodemus committed Jul 18, 2008
Commits on Jul 16, 2008

    * STYLE-WARN for argument list mismatches for all already-defined
    Richard M Kreuter committed Jul 16, 2008
  2. Fewer STYLE-WARNINGs.

      so that replacing an interpreted function is always uninteresting
      when the new definition comes from the same file.
    * Monkey with source-locations so that they get created during LOAD of
      a source file when *EVALUATOR-MODE* is :INTERPRET.
    Richard M Kreuter committed Jul 16, 2008

    * Recently-renamed FUNCTION-KEYWORD-PARAMETERS did something different
      than what FUNCTION-KEYWORDS is supposed to do.  Fix
      (used indirectly by DESCRIBE, something in sb-introspect, maybe
    Richard M Kreuter committed Jul 16, 2008
  4. Add support for abstract namespace addresses for AF_LOCAL …

    * Contributed by Matthew D. Swank
    Richard M Kreuter committed Jul 16, 2008
Commits on Jul 11, 2008
Commits on Jul 8, 2008
  1. many STYLE-WARNING changes.

    * Add various subclasses of STYLE-WARNING in src/code/condition.lisp
      for most of the cases signaled around the system.  (A few style
      warnings remain SIMPLE-STYLE-WARNINGS for now.)
    * Make STYLE-WARN be like WARN (take a condition class name and
    * Change over many callers of STYLE-WARN to supply names of new
      STYLE-WARNING classes and initargs for those conditions.
    * Set the default value of SB-EXT:*MUFFLED-WARNINGS* to a type that
      includes uninteresting redefinitions of functions and methods.
    Richard M Kreuter committed Jul 8, 2008
Commits on Jul 7, 2008
  1. Tweak .gitignore for 2 Linux/PPC files.

    Richard M Kreuter committed Jul 7, 2008
  2. adjust address-spaces for Windows 32

     * Dynamic-space was too large after the last adjustment.
    nikodemus committed Jul 7, 2008
Commits on Jul 4, 2008
  1. adjust address-spaces for Windows 64

     * Thanks to John Connors if this works, blame me if it doesn't
       (untested, as I don't have a Windows box available, but reputedly
       this should be good for both Win32 and Win64.)
    nikodemus committed Jul 4, 2008
Commits on Jul 3, 2008
  1. Record filenames in DEBUG-SOURCEs during EVAL-WHEN, LOAD.

    * During EVAL-WHEN (:COMPILE-TOPLEVEL) and LOAD, record both the
      filename and the S-expression in the DEBUG-SOURCE.
    * Change clients of the DEBUG-SOURCE structure to use the new slots.
      (This also affects SLIME.)
    Richard M Kreuter committed Jul 3, 2008
Commits on Jun 30, 2008
  1. Fix fpu_save, fpu_restore on x86-64.

    * Incorrect definition lead to segfault during gencgc when gencgc_verbose>1.
    Richard M Kreuter committed Jun 30, 2008
  2. Sort results of APROPOS-LIST and APROPOS.

    Richard M Kreuter committed Jun 30, 2008
  3. just one POWER-OF-TWO-CEILING, thank you

     * We had two, of which CEIL-POWER-OF-TWO with arguments that already
       were powers of two returned the *next* power of two, and not the
       argument, whereas POWER-OF-TWO-CEILING returned the argument if
       it already was a power of two.
       As far as I can tell returning the argument is fine in those case
       in places where CEIL-POWER-OF-TWO was used, so replace it with
       POWER-OF-TWO-CEILING -- which really doesn't have to be inline.
    nikodemus committed Jun 30, 2008

     * Not that anyone seems to have missed it yet...
    nikodemus committed Jun 30, 2008
  5. ADJOIN with constant NIL as second argument

     * One more bug in TRANSFORM-LIST-ITEM-SEEK.
    nikodemus committed Jun 30, 2008
  6. use CAREFUL-SPECIFIER-TYPE when deriving the type COERCE

     * Derived type of the second argument can eg. be a MEMBER type with
       where all members are not valid type specifiers: this is a runtime
       error, not a compile-time one.
    nikodemus committed Jun 30, 2008
  7. more conservative arithmetic optimizations

     * Don't convert (op <int> <single>) to (op (float <int> <single>)
       <single) if the integer may be too large for accurate conversion.
    nikodemus committed Jun 30, 2008
  8. more conservative interval artihmetic

     * In SAFELY-BINOP, when the other argument must be coerced to single
       float, punt if it is an integer that cannot be exactly represented
       as a single float.
     * Fixes bug 420, and a whole slew of MISC failures in ansi-tests --
       including the ones that used to cause a hard crash or a hang: cvs
       up -dPC your ansi-test trees, and should huzzah!
    nikodemus committed Jun 30, 2008
  9. correct handling of SATISFIES types in the compiler

     * CTYPEP used to retur a secondary value of true in cases where the
       function in question was not foldable.
     * Slightly sleazily extent SB-C::CONSTANT-FUNCTION-CALL-P (part of
       CONSTANTP) to return the primary result of the call as the
       secondary value, so CTYPEP can use it.
     * Test-case.
    nikodemus committed Jun 30, 2008
Commits on Jun 29, 2008
Commits on Jun 24, 2008
  1. more string trimming fixes

     * Return value in the no-op case for non-simple-strings must not be
       the underlying simple string object.
     * Correct return type (per spec) for STRING-TRIM &co is
       STRING-DESIGNATOR, but as long as we take care, we can make it
       STRING -- but the old SIMPLE-STRING is still wrong.
     * Instead of making WITH-STRING a full-blown Evil Macro, just use
       WITH-ARRAY-DATA at the call site.
     * Two more test-cases.
       patch by James Knight.
    nikodemus committed Jun 24, 2008
Commits on Jun 23, 2008
  1. Implement setsid, mlockall and mlockall in sb-posix

            * Also refactor some code
            * Patch by Travis Cross
    jsnell committed Jun 23, 2008