Basically, it is not supported. You can find many topics on discourse referring to the issue, with the most recent one (I think) being RFC: On non 8-bit bytes and the target for it (follow the links there for more info).
I’m currently working on a draft that adds the support to LLVM, but it won’t touch front end / back end, only IR and middle end passes. It would be very helpful if you give me more details about your target so that I can try to make the support more generic.
What does it mean from code generation point of view? Do code pointers have different properties compared to data pointers?
Where do you keep the index (0-3) of the accessed byte? Do you shift a pointer left by two bits (effectively making the pointer 18-bits)?
If performance is not a concern, you might want to check out this RFC.