GCC 4.3.0 Status Report (2008-02-14)
Janis Johnson
janis187@us.ibm.com
Mon Feb 18 22:01:00 GMT 2008
On Mon, 2008-02-18 at 16:12 -0500, Jakub Jelinek wrote:
> On Mon, Feb 18, 2008 at 03:57:10PM -0500, Daniel Jacobowitz wrote:
> > On Mon, Feb 18, 2008 at 03:25:03PM -0500, Jakub Jelinek wrote:
> > > What would break if in non-altivec ABI all Altivec registers are either
> > > fixed (-mno-altivec) or call-used (-maltivec)?
> >
> > I still suggest that the correct choice is to use the same set of
> > call-used and call-saved registers without the AltiVec ABI as we do
> > with it. Which has no affect with -mno-altivec, but requires some
> > prologue work with -maltivec -mabi=no-altivec. After that, whether
> > the default ABI is AltiVec or not does not much matter to GCC.
>
> That can work too, assuming on ppc-linux we can rely the kernel and libc
> handle saving/restoring the altivec regs (guess we can rely on it these
> days). All I'm trying to say is that having an option combination where
> some registers are neither fixed, nor call-used, nor call-saved
> is a bug (in the current -m32 -maltivec case I think they are officially
> call-saved, but nothing saves/restores them).
I have a patch, written since this thread started, that saves and
restores AltiVec registers based on TARGET_ALTIVEC instead of
TARGET_ALTIVEC_ABI. It passes gcc.target/powerpc tests and 176.gcc
with "-O3 -maltivec -mabi=no-altivec". I'll post that soon and do
full bootstrap/regtest.
Janis
More information about the Gcc
mailing list