> No, it is a major deficiency in the backends. Back-ends were obviously written with the natural alignment of types in mind and were not prepared for overaligned non-aggregate types. Fixing MIPS will not fix the other dozen and one can wonder, as was already mentioned by a few other people, whether the proper fix is not in the middle-end instead, because adding a dozen of TYPE_MAIN_VARIANT (...) in a dozen of back-ends is IMO not a good example of robust engineering.
-- Eric Botcazou