> hmm, yes. Again practically for most targets size_t will be > following its SIZE_TYPE advice, but surely not for all. OTOH while > the above clearly doesn't look "accidential", it certainly looks > wrong. If not for sizetype then at least for size_type_node. The > comment hints that the patch at most will no longer "get better > code", but if Pmode gets better code when used for sizetype(!) then > we should do so unconditionally and could get rid of the size_t > reverse-engineering in initialize_sizetypes completely (m32c might > disagree here).
On m32c, Pmode is a 24-bit type, and the chip just doesn't have enough math opcodes to to 24-bit pointer math with any degree of efficiency. So, you either do 32-bit math (performance is horrible, since it's all emulated) or 16-bit math on just the offset (sizeof size_t < Pmode).