Transform CONSP to LISTP for known not-nil argument.
Move RELEASE-FD-STREAM-BUFFER after the defstruct for FD-STREAM.

This inlines the accessors. Similarly STREAM-OUTPUT-STREAM can
avoid calling specifier-type in its typecase.
Use %OTHER-POINTER-WIDETAG instead of WIDETAG-OF where applicable.

Also strengthen a declaration in DUMP-SPECIALIZED-VECTOR.
Delete obsolete {GET,SET}-VECTOR-SUBTYPE and -WORD-LENGTH vops.
Avoid boxing of untagged numbers in an error call sequence.
Remove *META-PRIMITIVE-TYPE-NAMES* and BACKEND-INSTRUCTION- cruft.

Can still remove META-{SB,SC} but this was lower-hanging fruit.
Don't return (AND ... (NOT SIMPLE-ARRAY)) from TYPE-OF.

Unparsing a CTYPE allows negation unless the result is for TYPE-OF.
Based on an examination of uses of TYPE-OF within the compiler
it did not seem important to have another mode in which TYPE-OF
would be allowed to return negations for internal reasons.

INVALID-ARRAY-INDEX-ERROR uses TYPE-OF on an array, and it's just
as well to avoid mentioning the non-simpleness for readability,
but could easily be restored with (type-specifier (ctype-of ...))
if so desired. INSPECT might want that behavior back as well.

Fixes lp#1317308.
no more kludge-nondeterministic-catch-block-size

It turns out that the only reason for delaying objdef so late in
the build was the need to inform the compiler's info database
about functions to access slots.  To resolve the ordering issues,
delay all the forms relating to the slots to the same position in
the build (with a new late-objdef source file) but execute all the
forms relating to specials, constants and primitive objects
themselves early.

This is probably the longest-standing SBCL issue, being logged in
the code by WHN 1999-01-31.  It's nice to fix it before we run out
of architectures to port to.
Use a few less read-time conditionals

'meta-vmdef' had two variations on creation of an empty bit-vector,
plus an "apology" for doing it that way. This change makes that code
less confusing while making 'compiler/dump' no more confusing.

Also, consecutive reader conditionals are not very portable,
so fixed that in MAYBE-EMIT-MAKE-LOAD-FORMS.
Implement gencgc on ARM.
Enable GENCGC on ARM.
Add support for ARM Android.

The build infrastructure for easy cross-compilation with NDK is still
missing.
Restore build on non-android.
Add compiler support to sb-rotate-byte on ARM.
WITH-SIMPLE-RESTART: don't clobber STREAM variable in report-function.

This one is 24+ old, before CMUCL VCS history.

Reported by _death on #lisp.
Fix disassemble static symbol annotation on ARM.

Don't annotate twice for instructions like STR NULL, [NULL, #1129].
Improve the test for (TYPEP x 'UNBOXED-ARRAY)

This change makes SOURCE-TRANSFORM-UNION-TYPEP rewrite the test
into (TYPEP x '(AND ARRAY (NOT (ARRAY T)))) for ~10x smaller code.

Also fix lp#309098 in a more-or-less similar way.
Remove doc/sbcl-asdf-install.1.
Add missing ASSERT around RAISES-ERROR? in some tests.
Delete *BACKEND-SB-NAMES* and *BACKEND-META-SB-NAMES*.

*BACKEND-SB-LIST* is as good as a hashtable for 6 things.

Other deletions from package-data-list due to a prior change.