This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC] Linux-specific ppc32 ABI
> Date: Sat, 26 Jan 2008 18:18:17 +0000 (UTC)
> From: "Joseph S. Myers" <joseph@codesourcery.com>
>
> On Sat, 26 Jan 2008, Mark Kettenis wrote:
>
> > > > GCC (XLC as well) doesn't promote floats to doubles and does not align
> > > > them to 8 bytes in the stack. Actually, it just aligns the prototyped
> > > > float parameters to 4 bytes in the stack.
> >
> > So both compilers are buggy.
>
> They would be buggy if they were targetting PowerPC Solaris from 1995 and
> if the 1995 ABI from Sun is an accurate description of the ABI on that
> system in the first place. They are not targetting that OS, they are
> targetting OSes where the 1995 document is only indicative guidance to a
> predecessor of the ABIs in use on those OSes.
Well, I'd be surprised if this particular deviation from the 1995
document (which is pretty much a corner case) was a deliberate
deviation. I'm not suggesting the bug should be fixed though, so I
guess I should have called it a feature ;)
> > > > This is something that needs to be improved in the ABI text.
> >
> > Well, I suppose you can change it, but I wouldn't call it an
> > improvement. Who controls the 32-bit PowerPC SystemV ABI these days?
>
> The Power.org ABI working group, which is working on producing a
> copyright-clean document (so not using any of the Sun text), copyrights to
> be assigned to the Linux Foundation, describing the ABIs (both hard and
> soft float, and E500 and Altivec extensions) as they are in use today for
> both GNU/Linux and bare-metal (EABI) targets (GNU/Linux and EABI differ in
> the default for -maix-struct-return, and in the default size of long
> double, but are otherwise the same at the function-call level).
Thanks for the clarification.