------- Comment #6 from janis at gcc dot gnu dot org 2008-02-05 02:23 ------- There's another mess hiding under the ABI change, which is that synthetic vectors of the same size as AltiVec vectors are passed differently for -mabi=altivec than for -mabi=no-altivec. There are warnings for synthetic vectors passed by reference with "-mno-altivec -mabi=no-altivec" (currently the -m32 default) but no warning for "-mno-altivec -mabi=altivec" (the planned -m32 default). Varargs are apparently broken for "-mno-altivec -mabi=altivec", or at least test gcc.c-torture/execute/va-arg-25.c fails with those options as the default.
I wonder if anything actually uses synthetic vectors and if so, whether they are ever passed as arguments or return values. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34526