Altivec Linux support in GCC

Geoff Keating geoffk@geoffk.org
Tue Apr 15 19:01:00 GMT 2003


> Date: Mon, 14 Apr 2003 22:37:22 -0500 (CDT)
> From: Kumar Gala <kumar.gala@motorola.com>

> On 14 Apr 2003, Geoff Keating wrote:
> 
> > Kumar Gala <kumar.gala@motorola.com> writes:
> >
> > > If I have a Linux PPC targeted GCC why do I need to
> > > tell it to use the abi to get altivec code generation?
> >
> > You don't; if you just want altivec code, you can use just -maltivec.
> > However, this doesn't get you the Altivec ABI.
> 
> What does -maltivec mean w/o -mabi=altivec?  Can I pass AltiVec arguments
> to functions?  How are they passed?  What happens to the stack?  What ABI
> is it using?

It means that Altivec instructions may be used but the ABI does not
change.

> Why not do this the other way around.  I guess the most common situation
> would be both flags.

You'd have to take a survey.  I expect the most common situation would
be just -maltivec, since few people want to write code that's
ABI-incompatible with the operating system they're using.

> > This is technically impossible due to the differences between the
> > Altivec ABI and the SVR4 ABI; some situations require saving all the
> > call-saved registers, and that list differs between the two ABIs.
> >
> 
> What situations require this?

Functions that recieve nonlocal gotos.

-- 
- Geoffrey Keating <geoffk@geoffk.org>



More information about the Gcc mailing list