Fix passing arrays to C on ARM.

The last element containing null-termination for strings may end up
inside auto_gc_trigger page, causing a memory fault in foreign code,
which can't be handled. Stuff a 0 into the last element when
allocating arrays.
Abstract stack allocation into ALLOCATION macro on ARM.
Enable :stack-allocatable-fixed-objects on ARM.
Fix allocating nil-vectors on ARM.

The recent change caused overwriting of the length header for
nil-vectors.
Fix sb-qshow on non-threaded builds.

It used an uninitialized buffer.
Make static functions interrupt safe on ARM.

Don't put things onto the control stack before the stack pointer isn't
written back.
Fix PA handling in call_into_x on ARM.

The pseudo-atomic flag was untagged into the wrong side, LSL instead
of LSR.
compiler/arm/call: Fix minimum full-call-frame size.

  * We need to allocate a minimum of two words (up from the one
that we were originally allocating), one for the frame link, and
one for the LRA.  Without allocating this second word, the LRA is
subject to being overwritten during an inconveniently-timed
interrupt.
code/debug-int,runtime/arm-assem.S: Fix undefined-function backtrace.

  * Two things here.  First is that MAKE-LISP-OBJ didn't recognize
undefined_tramp as a valid object.  Easily enough fixed.  Second
is that the undefined_tramp wasn't initializing reg_CODE before
trapping, leaving the debugger looking in the wrong place for the
error trap location.  Also easily enough fixed.

  * Unlike PPC, we always have fully-initialized call frames
constructed on the caller side, so we don't need to do the rest of
the fixups that PPC does.
Handle CSP properly during stack allocation on ARM.

Write the new CSP before using the stack.
compiler/arm/call: Fix source locations in the debugger.

  * It turns out that the debugger is spectacularly picky about
the exact position of noted locations.  To the point where a mere
twelve-octet displacement of the noted location of a function
return will throw off its ability to find source forms.

  * Fix, by noting the location of return locations in
DEFAULT-UNKNOWN-VALUE to before the first instruction emitted.
Ombibus initial commit for the SB-UNICODE package

- Adds src/code/target-unicode.lisp to the build order

- Defines a new SB-UNICODE package and adds it to the list of packages
to generate docstrings for

- Moves SB-IMPL::NORMALIZE-STRING and its dependencies to the
SB-UNICODE package and exports it

- Defines public accessors for several of the properties in
UnicodeData.txt

- Adjusts the Unicode normalization tests to account for the new
location of NORMALIZE-STRING

- Adds tests for the newly-defined property accessors
Remove trailing whitespace in two files
Removes the mapping between BELL and #\Bel to fix Unicode

Unicode encodes U+1F514 (named BELL), which conflicts with the alias
"Bell" -> #\Bel defined in target-char.lisp. This causes
(name-char (char-name (code-char #x1F514))) => #\Bel not #\BELL
(U+1F514) as expected. This ambiguity had to be resolved by either
removing "BELL" -> #\Bel or "BELL" -> U+1F514. Discussion in IRC led
to the determination that removal of the #\Bel alias was the best
course of action.

This is a breaking change. If it affects you, please raise the issue
for further discussion.
Removed workaround case in tests