From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21439 invoked by alias); 26 Jan 2008 19:09:00 -0000 Received: (qmail 21426 invoked by uid 22791); 26 Jan 2008 19:08:59 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Sat, 26 Jan 2008 19:08:36 +0000 Received: from brahms.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by brahms.sibelius.xs4all.nl (8.14.1/8.14.1) with ESMTP id m0QJ13pg020363; Sat, 26 Jan 2008 20:01:03 +0100 (CET) Received: (from kettenis@localhost) by brahms.sibelius.xs4all.nl (8.14.1/8.14.1/Submit) id m0QJ10Tk010787; Sat, 26 Jan 2008 20:01:00 +0100 (CET) Date: Sat, 26 Jan 2008 19:10:00 -0000 Message-Id: <200801261901.m0QJ10Tk010787@brahms.sibelius.xs4all.nl> From: Mark Kettenis To: joseph@codesourcery.com CC: bauerman@br.ibm.com, luisgpm@linux.vnet.ibm.com, drow@false.org, brobecker@adacore.com, gdb-patches@sourceware.org In-reply-to: (joseph@codesourcery.com) Subject: Re: [RFC] Linux-specific ppc32 ABI References: <1199991624.3343.19.camel@gargoyle> <20080111060629.GC12954@adacore.com> <1200066920.26270.9.camel@gargoyle> <20080111155733.GA3240@caradoc.them.org> <1200086736.26270.35.camel@gargoyle> <1201277155.11950.134.camel@localhost.localdomain> <200801261535.m0QFZddH026156@brahms.sibelius.xs4all.nl> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2008-01/txt/msg00627.txt.bz2 > Date: Sat, 26 Jan 2008 18:18:17 +0000 (UTC) > From: "Joseph S. Myers" > > 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.