align inline constant section with long nops

Makes the disassembly much nicer, particularly at speed > space.
make SOCKET-RECEIVE work correctly when receiving overly-long UDP packets

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.
Ignore an argument in x86's EMIT-CONSTANT-SEGMENT-HEADER

Fixes the build on this platform.
interrupt.h: Remove rtmin[01]_handler forward declarations

Left in accidentally from an earlier POSIX safepoint idea.
Fix a corner case in RUN-INTERRUPTION

Loop in C, not Lisp, if only to appease the test suite.
Mention sb-safepoint, sb-thruption in base-target-features.lisp-expr
fix bug in SYMBOL-VALUE CAS expansion for constant arguments
win32-os.c: Split up handle_exception

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.
Add odxprint, a replacement for FSHOW which can be configured at run-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.
Add dyndebug flags backtrace_when_lost, sleep_when_lost

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.
release.sh: Push accumulated automation changes.
Tweak slam.sh to be slightly more configurable regarding the host binary

Developers building with an existing SBCL as a host, which is not
installed as "sbcl" in the path, or which needs a --core option, can
now set XC_LISP and XC_CORE prior to invoking slam.sh.  Previously,
such a host could only be used with slam.sh after custom
modifications to the script.

The default behaviour is unchanged.
Port tests/expect.sh, foreign.test.sh to FreeBSD's shell

Fixes clos.test.sh, foreign.test.sh on FreeBSD 9.1.
x86-bsd-os.c: Include stdio

Fixes the build on FreeBSD 9.1/x86.
Port safepoints to FreeBSD/x86
fix CAS on DEFCAS-defined places when the form is a macro
implement ATOMIC-PUSH and ATOMIC-POP
timeouts for WITH-MUTEX and WITH-RECURSIVE-LOCK

  * Also support :WAIT-P in WITH-RECUSIVE-LOCK.

  * Deprecate GET-MUTEX properly (been deprecated since early 2010, but didn't signal
    a compile-time warning, and we used it internally.)

  * Make WITH-MUTEX signal a runtime error when :VALUE is used and is other
    than current thread or NIL. Releasing it isn't going to work right if
    someone else holds it.
Fix clisp cross-compile

Problems:

* least-positive-long-float is unrepresentable in clisp, ending up
  with being zero
* clisp's decode-float returns a 0 exponent for a 0 float (rather
  than something large and negative)
* everything got constant-folded in the cross-compiler, thus using
  the host's runtime.

Solution: compute the value using sb!vm:double-float-digits/bias
fix unthreaded build