> Do you have modes whose size is not multiple of the unit? Yes. That's exactly the problem I'm trying to solve here. I'm making partial int modes have real corresponding types, and they can be any bit size, with target PS*modes to match. The MSP430, for example, has 20-bit modes, 20-bit operands, and __int20. Rounding up to byte sizes forces everything into an emulated SImode which makes code size huge and performance much worse.
Thus, in these cases, TYPE_SIZE and TYPE_SIZE_UNIT no longer have a "* BITS_PER_UNIT" mathematical relationship.