https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96791
--- Comment #22 from Michael Meissner <meissner at gcc dot gnu.org> --- When I wrote the original in power7 days, the intent was: If the user said -mcpu=power7 (for 32-bit) and did not explicitly set either -mabi=altivec or -mabi=no-altivec, that -mabi=altivec would be set automagically. If the user said -mcpu=power7 and did specify whether the altivec was set, the compiler would honor that request. For 32-bit, I assume the problem may be our old friend TImode. Other parts of the compiler, including the generic parts of block move assume that there must be an integer mode as large as the largest non-vector mode. We don't provide TImode in 32-bit, and that leads us to have to disable IEEE 128-bit hardware support because we don't have a corresponding 128-bit integer for doing moves. Before OPAQUE we did define OImode and XImode, but never enabled them, and that prevented some ICEs where the machine independent parts did not bother to check if the get integer mode size that is n-bits returned NULL.