The following is a key of the three bit low-tagging scheme:
000even fixnum
001function pointer
010even other-immediate (header-words, characters, symbol-value trap value, etc.)
011list pointer
100odd fixnum
101structure pointer
110odd other immediate
111other-pointer to data-blocks (other than conses, structures, and functions)
This tagging scheme forces a dual-word alignment of data-blocks on the heap, but this can be pretty negligible:
Everything else is vector-like including code, so these probably take up so many words that one extra one doesn’t matter.