Hello! > In this case, GCC wasn't following the ABI. My patch will have GCC follow the > ABI. The XL compiler also follows the ABI. So we have to decide whether to > keep the current calling sequence which violates the ABI, or change the > compiler to follow the ABI, and break backwards compatiblity. > > Given the machine doesn't have native VD2Imode operations, except for > conversion to/from floating point, and the bitwise operations, I suspect not > to > many people use the data type. Note, V2DImode was added in GCC 4.5 when the > VSX support was added. It was not in the earlier Altivec support.
IMO, the compiler should emit a note in this case, something like [unfortunately, many...] examples in i386.c: static bool warned; if (!warned && warn_psabi) { warned = true; inform (input_location, "the ABI of passing struct with" " a flexible array member has" " changed in GCC 4.4"); } Uros.