Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jul 2000 14:04:34 -0400
From:      David Edelsohn <dje@watson.ibm.com>
To:        Narvi <narvi@haldjas.folklore.ee>, "David O'Brien" <obrien@FreeBSD.ORG>
Cc:        freebsd-ppc@FreeBSD.ORG
Subject:   Re: the abi 
Message-ID:  <200007271804.OAA28782@mal-ach.watson.ibm.com>
In-Reply-To: Message from Narvi <narvi@haldjas.folklore.ee>  of "Thu, 27 Jul 2000 18:39:13 %2B0200." <Pine.BSF.3.96.1000727170610.98205F-100000@haldjas.folklore.ee> 

next in thread | previous in thread | raw e-mail | index | archive | help
	I am the PowerPC port maintainer of GCC and I am involved in a
number of PowerPC, IA-64, and Sledgehammer ABI issues.  I strongly
recommend that you use the PowerPC SVR4/ELF ABI for the PowerPC FreeBSD
port for a number of reasons:

1) GCC and binutils only support PowerOpen/XCOFF and SVR4/ELF. You receive
little or no benefit from developing and maintaining your own toolchain.
Apple is having enough problems maintaining and re-integrating their
Mach-O changes.

2) SystemV/Solaris/Linux-style assembly language is well known and
understood throughout the Open Source development community.

3) Many programs and libraries now rely on ELF file format features and
the standard toolchain combines ELF with SVR4 ABI.

4) It is much more efficient to run non-FreeBSD PowerPC applications with
a similar ABI than translating calling conventions, addressing ranges,
etc.  PowerPC Linux, which uses PowerPC SVR4/ELF ABI, has the collection
of applications that would be of most interest to the PowerPC FreeBSD user
community. 

5) SVR4/ELF ABI is prevalent throughout the open source operating system
community, allowing for more cooperation, and SVR4/ELF ABI is prevalent
throughout the PowerPC development community.

	The PowerPC ABI used by FreeBSD is not the area that developers
should spend their time trying to re-invent the wheel.  There are many
other, more important decisions where FreeBSD can develop and implement a
better kernel design than the current open source PowerPC operating
systems.

David

	P.S. As far as optimal ABIs, AIX PowerOpen has some poor decisions
(FP alignment, optional tag table in text section, etc.) because it was
defined over ten years ago, but it is a makes slightly more efficient use
of the PowerPC architecture than SVR4 (load addreses alignment, structure
passing, etc.).

	P.P.S. The SVR4/ELF ABI for IA-64 defined by HP and Intel also
uses function descriptors and TOC addressing.  There are a number of
issues that make function descriptors a very efficient design choice
although most developers are not accustomed to them.

===============================================================================
David Edelsohn                                      T.J. Watson Research Center
dje@watson.ibm.com                                  P.O. Box 218
+1 914 945 4364 (TL 862)                            Yorktown Heights, NY 10598


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ppc" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200007271804.OAA28782>