This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: A Far Less Ambitous AltiVec patch
- From: Ziemowit Laski <zlaski at apple dot com>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org, Aldy Hernandez <aldyh at redhat dot com>, jason at redhat dot com
- Date: Mon, 2 Feb 2004 14:45:08 -0800
- Subject: Re: A Far Less Ambitous AltiVec patch
- References: <CE878995-456D-11D8-B7FE-000393673036@apple.com> <m3vfmpfael.fsf@frogsleap.quesejoda.com> <401EC030.4030403@codesourcery.com>
On 2 Feb, 2004, at 13.25, Mark Mitchell wrote:
Aldy Hernandez wrote:
[Respective maintainers should comment on the non AltiVec parts.
Mark/Jason could you at least take a look at the vector mangling code
Ziemowit wrote?]
> Most of the remaining bits are also Darwin or RS6000-specific.
The only
> platform-independent change is the addition of a target hook for
> mangling of vendor-specific types (which AltiVec types are).
Luckily,
> no demangler changes are needed.
I am not a big fan of vendor specific manglers, especially if it's
just for vectors. We should come up with a generic way of mangling
vector types in GCC.
Agreed.
Since we have a uniform way of representing them internally we should
be able to have a uniform way of mangling them.
Mark, see my response to Aldy. The generic vector infastructure in
inadequate in supporting the AltiVec type system ('vector unsigned ...'
vs. 'vector bool ...',
'vector unsigned short' vs. 'vector pixel'), so any generic mangling
scheme will likewise be inadequate. Unless, of course, you give me
permission to unconditionally introduce the AltiVec type system into
the compiler... do you? :-)
The ABI actually already has a way of dealing with vendor-extended
types; see the spec. It involves spelling out the name of the type,
which seems perfectly reasonably to me.
But that's what my patch does (via the 'u' and 'U' encodings). How
else would you like to see this done?
--Zem
--------------------------------------------------------------
Ziemowit Laski 1 Infinite Loop, MS 301-2K
Mac OS X Compiler Group Cupertino, CA USA 95014-2083
Apple Computer, Inc. +1.408.974.6229 Fax .5477