Skip site navigation (1)Skip section navigation (2)
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>