This is the mail archive of the
mailing list for the GCC project.
Re: Target-specific Front-Ends? (Was: front end changes foraltivec)
- From: Ira Ruben <ira at apple dot com>
- To: Stan Shebs <shebs at apple dot com>
- Cc: Ziemowit Laski <zlaski at apple dot com>, gcc at gcc dot gnu dot org, Aldy Hernandez <aldyh at redhat dot com>, "Joseph S. Myers" <jsm28 at cam dot ac dot uk>
- Date: Mon, 26 Nov 2001 23:45:00 -0800
- Subject: Re: Target-specific Front-Ends? (Was: front end changes foraltivec)
- References: <339DE634-E2DE-11D5-A770-0030658361CA@apple.com><3C033117.F8EDD78A@apple.com>
At 10:22 PM -0800 11/26/01, Stan Shebs wrote:
>From what I know of the AltiVec-
>using population, the total aggregate effort of changing the
>syntax of all the vector constants in source code might add up
>to as much as one day - less than the effort needed to get the
>extension working in GCC. So should we implement the extension
>and support it forever, or get users to spend a few minutes to
>change their sources?
I think there would be a lot of resistance to go back and change existing code. Also you need to consider the impact this would have on MetroWerks users when porting to gcc, not to mention the requisite change for the MW compiler itself (of course they could support both forms).
>There were some real boners,
>such as the context sensitivity of the vector keyword, that I think
>could have been avoided if some GCC folks had participated.
At the time the AltiVec language model was being designed gcc was never in the picture -- period! The only "players" were MrC[pp] and Moto's Mcc (not even MW). I'm not sure what prompted Moto to try to later retrofit the design into gcc. And I don't consider the use of "vector" as a context-sensitive keyword a "real boner". THAT WAS MY DECISION/DESIGN! For MrC[pp] is was easy to do. And it was based on feedback from our internal (Apple) AltiVec users (the *only* users at that time other than Moto). They didn't want to write __vector and they certainly couldn't tolerate "vector" being a macro that expanded to __vector (which Moto was proposing). And "vector" couldn't be treated as an unconditional reserved word either.