Don't make bogus things when creating large arrays.

With the change to 1-bit fixnums tags on x86-64, the condition that
the fixnum words converted to bytes still fit into the word length no
longer holds, which causes the number of bytes to overflow and produce
unexpected results.

Declare the number of words in ALLOCATE-VECTOR to be
(unsigned-byte (- sb-vm:n-word-bits sb-vm:word-shift)).