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>