For vector element types of less than one byte in size, we would
generate incorrect scalar offsets and produce incorrect codegen.
This optimization could be supported in the future, e.g. by loading a
byte, then shifting and masking out the smaller vector element type.
However, without an upstream target to test against it's best to avoid
the bad codegen in the simplest possible way.
Related to this bug:
https://bugs.llvm.org/show_bug.cgi?id=27600
I think using .isByteSized would be more obvious and more correct, since it would catch cases like i12 which also can't be handled by indexing.