Permalink
Switch branches/tags
Commits on Sep 11, 2012
  1. Add dyndebug flags backtrace_when_lost, sleep_when_lost

    lichtblau committed Sep 11, 2012
    Available when :SB-QSHOW is enabled, these settings can be enabled
    through the SBCL_DYNDEBUG environment variable to customize SBCL's
    behaviour prior to entry to ldb.
    
    With backtrace_when_lost, lossage shows a backtrace before
    continuing with the lossage handler as usual.  (Thanks to Dmitry
    Kalyanov for this idea, here committed as a dyndebug option.)
    
    With sleep_when_lost activated, the monitor is preempted, and SBCL
    will instead cease to do anything except for a OS-level sleep call.
    This behaviour has proven useful in preserving a failing thread's
    current state until an external debugger can be attached.
  2. Add odxprint, a replacement for FSHOW which can be configured at run-…

    lichtblau committed Sep 4, 2012
    …time
    
      - A new macro odxprint(flag, "fmt", ...) performs the equivalent of
        a printf("fmt", ...), but only if `flag' has been enabled at
        run-time.
    
      - Environment variables can be used to set flags, using either
        SBCL_DYNDEBUG="flag1 flag2 flag3" syntax, or
        SBCL_DYNDEBUG__FLAG1="nonempty string" syntax.
    
      - Lisp feature SB-QSHOW enables support for odxprint-based FSHOW.
        (Users who prefer to edit runtime.h to enable QSHOW can still do
        so...)  SB-QSHOW is enabled by default on Windows, where the
        odxprint mechanism was first used.
    
      - Implement FSHOW, FSHOW_SIGNAL on top of odxprint.  Corresponding
        flags are called fshow, fshow_signal.
    
      - For gencgc_verbose, support a flag of the same name, since it is
        conditional on QSHOW (inspite of not being implemented on top of
        FSHOW).
    
     - Does not yet support odxprint features specific to Windows debugger
       integration; output is currently directed to stderr unconditionally.
    
    This commit backports Anton Kovalenko's Windows-specific odxprint to
    POSIX and integrates it with FSHOW.
  3. win32-os.c: Split up handle_exception

    lichtblau committed Sep 3, 2012
    In preparation for various changes to exception handling, split up
    handle_exception into separate functions for each kind of exception.
    
    This change is entirely cosmetic in nature.
Commits on Sep 10, 2012
Commits on Sep 7, 2012
  1. Fix a corner case in RUN-INTERRUPTION

    lichtblau committed Sep 3, 2012
    Loop in C, not Lisp, if only to appease the test suite.
  2. interrupt.h: Remove rtmin[01]_handler forward declarations

    lichtblau committed Sep 3, 2012
    Left in accidentally from an earlier POSIX safepoint idea.
  3. Ignore an argument in x86's EMIT-CONSTANT-SEGMENT-HEADER

    lichtblau committed Sep 7, 2012
    Fixes the build on this platform.
Commits on Sep 5, 2012
  1. make SOCKET-RECEIVE work correctly when receiving overly-long UDP pac…

    froydnj committed Sep 5, 2012
    …kets
    
    Only copy as much data as the provided buffer can hold.  Continue to return
    the length provided from recvfrom as per documentation.
    
    Fixes lp#1023438.  Thanks to Robert Uhl for the fix.
  2. align inline constant section with long nops

    froydnj committed Sep 5, 2012
    Makes the disassembly much nicer, particularly at speed > space.
Commits on Sep 3, 2012
  1. add SSE instructions with two opcode bytes

    froydnj committed Sep 3, 2012
    This patch just introduces the formats, some helper functions, and most
    of, if not all of, the xmm-xmm/mem ones.  There's still quite some
    interesting instructions left to add.
Commits on Aug 31, 2012
  1. Reading floats with large exponents no longer takes too much time.

    stassats committed Aug 31, 2012
    Reading 1.0s1000000000000000 will attempt to construct a very large
    bignum, which takes a considerable amount of time just to report in
    the end that it cannot be represented as a float. Truncate the
    exponent to manageable size before raising it.
    
    Fixes lp#309070. Thanks to Paul Khuong for the help.
Commits on Aug 25, 2012
  1. Define _GNU_SOURCE when building contribs on Linux.

    stassats committed Aug 25, 2012
    sb-posix:o-direct doesn't get grovelled without it.
Commits on Aug 24, 2012
  1. disassemble: New customization variable sb-ext:*disassemble-annotate*.

    stassats committed Aug 24, 2012
    sb-ext:*disassemble-annotate*: Controls whether to annotate
    DISASSEMBLE output with source forms, defaults to T.
    
    Also remove an unused function.
  2. sb-bsd-sockets: Package clean up.

    stassats committed Aug 24, 2012
    sb-bsd-sockets-internal: Don't use sb-c-call package, it's a
    deprecated nickname for sb-alien, and sb-alien is already
    used.
    sb-win32-sockets-internal: Remove, not used anywhere.
Commits on Aug 15, 2012
  1. Fix test-case for bug-511072 in packages.impure.lisp

    stassats committed Aug 15, 2012
    It was creating an error in an additional thread and didn't handle it
    properly, which caused SBCL to bail out.
    Reported by Mirko Vukovic.
Commits on Aug 13, 2012
  1. Add type declarations in stable-sort-list

    pkhuong committed Aug 13, 2012
     * I'd copied some code from a preliminary development version.
  2. More efficient (stable) sort of lists

    pkhuong committed Aug 13, 2012
     * (Reverse-) Sorted runs are mostly processed in linear time;
    
     * Calls to the :key function are cached;
    
     * Base cases now include specialised sorts for lists of
       length 3 and shorter.
    
     * Minimal test case for stable sorting.
  3. Fix the build on Darwin

    pkhuong committed Aug 13, 2012
     * Darwin's assembler doesn't have default values for .fill directives.
    
     * Only use call_into_lisp_tramp on darwin/x86, not darwin.
    
     * Edit NEWS to note that threads have been OK on 10.8 since 1.0.58,
       while we're here.
Commits on Aug 12, 2012
  1. Add a section about random number generation to the manual.

    leuler committed Aug 12, 2012
    Document initial random state consistency, how to achieve or avoid
    repeatability of random numbers, extensions with respect to seeding,
    generation of random floats, and the currently used PRNG algorithm.
    
    Move the docstring of SEED-RANDOM-STATE over from the "Miscellaneous
    Extensions" section.
  2. Mention SB-EXT:EXIT instead of SB-EXT:QUIT in docstrings, etc.

    scymtym authored and stassats committed Aug 7, 2012
    Suggest SB-EXT:EXIT instead of SB-EXT:QUIT in help string in
    %INVOKE-DEBUGGER
    
    Refer to SB-EXT:EXIT instead of SB-EXT:QUIT in docstring of
    SB-EXT:SAVE-LISP-AND-DIE
    
    Refer to SB-EXT:EXIT instead of SB-EXT:QUIT in docstring of
    SB-EXT:*EXIT-HOOKS*
Commits on Aug 11, 2012
  1. Merge branch 'master' into mswinmt

    akovalenko committed Aug 11, 2012
    Conflicts:
    	src/code/cold-error.lisp
    	src/code/filesys.lisp
    	src/code/run-program.lisp
    	src/code/target-alieneval.lisp
    	src/code/target-thread.lisp
    	src/compiler/generic/objdef.lisp
    	src/runtime/gc-common.c
    	src/runtime/gc-internal.h
    	src/runtime/gencgc-internal.h
    	src/runtime/gencgc.c
    	src/runtime/runtime.c
    	src/runtime/thread.c
    	src/runtime/win32-os.c
Commits on Aug 10, 2012
  1. Factor out most x86 code using the FS prefix into a macro WITH-TLS-EA.

    lichtblau committed Jul 1, 2011
    The macro expands into the exact same forms it replaces at the moment.
    
    Windows threading will be able to plug into this macro with few changes,
    and notably much reduced read-time conditionals.