This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: (C++) mangling vector types
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Daniel Jacobowitz <drow at false dot org>
- Cc: Richard Henderson <rth at redhat dot com>, Jason Merrill <jason at redhat dot com>, GCC <gcc at gcc dot gnu dot org>, Mark Mitchell <mark at codesourcery dot com>, Ulrich Drepper <drepper at redhat dot com>
- Date: Thu, 12 Nov 2009 16:58:24 +0000 (UTC)
- Subject: Re: (C++) mangling vector types
- References: <4AFC28C8.6090505@redhat.com> <4AFC3365.3050200@redhat.com> <20091112162419.GA21016@caradoc.them.org>
On Thu, 12 Nov 2009, Daniel Jacobowitz wrote:
> On Thu, Nov 12, 2009 at 08:10:13AM -0800, Richard Henderson wrote:
> > On 11/12/2009 07:24 AM, Jason Merrill wrote:
> > >1) Leave the current mangling as is
> > >2) Leave the current mangling as is for the most common vector size on a
> > >target (SSE, Altivec) and use the new mangling for other vector sizes.
> > >3) Switch to the new mangling
> >
> > I vote for 2.
>
> Does anyone know of another relevant compiler? What does it do?
> For instance, if someone can hand me a test case, I could check how
> ARM's compilers mangle it (or don't).
It seems clear to me that on ARM, generic vectors corresponding to NEON
vector types should be mangled the same as the corresponding NEON types
(whose mangling is specified in AAPCS), even when NEON is disabled, just
as they follow AAPCS for argument passing and return (including when the
VFP ABI is enabled and VFP but not NEON is supported). (Since generic
vectors may have other combinations of element type and size than those
supported by NEON and listed in AAPCS, the general issue does still apply
on ARM for such other generic types.)
--
Joseph S. Myers
joseph@codesourcery.com