If loop optimization assumes sizeof(void *) == sizeof(size_t) and won't work correctly otherwise, perhaps a check for that condition in gate_tree_ssa_loop_ivopts() would be appropriate? I thought of just disabling that flag in m32c.c, but I figured a more generic solution would make more sense, and occasionally get the attention of the loop maintainers to remind them of the limitation.