Date: Wed, 15 Jun 2005 10:21:06 -0700 From: "David O'Brien" <obrien@freebsd.org> To: Andreas Tobler <toa@pop.agri.ch> Cc: freebsd-ppc@freebsd.org Subject: Re: ABI convention for structs <=8 bytes? Message-ID: <20050615172106.GA1675@dragon.NUXI.org> In-Reply-To: <42AF3DF7.1080701@pop.agri.ch> References: <42AF3DF7.1080701@pop.agri.ch>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jun 14, 2005 at 10:28:39PM +0200, Andreas Tobler wrote: > My situation is the following, there are two implementation of the SYSv4 > abi for PPC around in gcc. The first one, a draft, passes structs > smaller or equal to 8 bytes in memory. The second one, the final one, > passes them in registers. > So far the fbsd ppc uses the final one. Fine. Except that it is a > nightmare to build the resulting struct out of registers with alignment > rules... > > OpenBSD, NetBSD and Linux PPC which rely on SYSV4 pass them in memory. > AIX and Darwin do pass them also in memory but they have a different ABI. > > NetBSD passed it until 1.5 also in registers, according to the comments > in gdb ppcnbsd-tdep.c. Now they use the 'broken' convention. I do not > know more about why and how long this will be... > > My simple question is, will the fbsd-ppc ABI convention stay with the > final SYSV4 ABI from Sun, or will there be a switch to the broken one? My plans are to stick to the official ELF (we do do the full SVR4 ABI). I think sticking to Darwin and OpenSolaris/PPC (in-progress) has merit. -- -- David (obrien@FreeBSD.org)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050615172106.GA1675>