This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Baby's First AldyVec/AltiVec patch
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Matt Austern <austern at apple dot com>
- Cc: aldyh at redhat dot com,"compiler-group at group dot apple dot com ()" <compiler-group at group dot apple dot com>,mark at codesourcery dot com, gcc-patches at gcc dot gnu dot org,Dale Johannesen <dalej at apple dot com>,Daniel Berlin <dberlin at dberlin dot org>,Ziemowit Laski <zlaski at apple dot com>,Zack Weinberg <zack at codesourcery dot com>
- Date: Mon, 29 Dec 2003 21:20:42 +0100
- Subject: Re: Baby's First AldyVec/AltiVec patch
- References: <E3468C39-3271-11D8-976A-000393673036@apple.com> <87zndouvn9.fsf@egil.codesourcery.com> <B83F3B1B-32AF-11D8-B83F-00039390FFE2@apple.com> <1072147229.7974.17.camel@doubledemon.codesourcery.com> <18BAC6C3-3575-11D8-BBD2-000A95D7CD40@apple.com> <02D8A418-3576-11D8-AD75-000393B2ABA2@apple.com> <1072204448.7976.68.camel@doubledemon.codesourcery.com> <C8FE122D-3579-11D8-B974-000393B2ABA2@apple.com>
On 23-dec-03, at 19:56, Matt Austern wrote:
And remember the downside if we don't introduce the Motorola syntax:
Altivec code won't be portable between the various compilers that all
claim to support Altivec. That's a very serious problem, and it's
exactly
what standards are supposed to prevent.
Hey, the Motorola AltiVec PIM does not support 64-bit PowerPC at all;
in fact, it requires incompatible changes to sanely support it.
There is a real need for a new, better, C binding for VMX; I for sure
don't care for compatibility with the Motorola AltiVec PIM at all,
as it is very very awkward to use (in fact, the _only_ thing that
it buys over writing real assembly is register allocation, and for
that you have to write casts almost everywhere -- I prefer to stay
with handwriting assembly (or having the compiler auto-vectorize
stuff of course)).
All in all, I think we would do better to learn from the mistakes
in the Motorola AltiVec PIM and start over.
Segher