Date: Tue, 07 May 2002 23:00:42 -0400 From: Nathan Hawkins <utsl@quic.net> To: arch@FreeBSD.ORG Subject: Re: syscall changes to deal with 32->64 changes. Message-ID: <3CD894DA.6060602@quic.net> References: <XFMail.20020507103320.jhb@FreeBSD.org> <3CD7FE57.1000508@quic.net> <20020507110901.F23330@dragon.nuxi.com> <3CD823E8.2010809@quic.net> <20020507135957.A30027@dragon.nuxi.com>
index | next in thread | previous in thread | raw e-mail
David O'Brien wrote:
>On Tue, May 07, 2002 at 02:58:48PM -0400, Nathan Hawkins wrote:
>
>
>>>>I'd like to see FreeBSD start using ELF .note.ABI-tag sections to handle
>>>>the binary OS type/versioning. I know that at least NetBSD, Linux and
>>>>Hurd do it this way, and I think most others do too.
>>>>
>>>>
>>>Why? Just to follow the NIH herd? The EI_OSABI and EI_ABIVERSION fields
>>>were in the gABI spec before anyone started using .note sections for
>>>this.
>>>
>>>
>>>
>>Because AFAICS, it's a defacto, unwritten standard. Even if it violates
>>spec.
>>
>Your response is mostly content free. But I honestly interested in your
>response. Could you reread what I said and address it?
>
>
All right:
1. Why?
How about being able to use stock binutils?
The original subject was how to handle some proposed ABI changes. The
.note.ABI-tag section has a version field, already in the binaries
(since 4.1, I believe.) It looks pretty simple to add a field to
Elf_Brandinfo that has the ABI version. exec_elf_imgact could then be
altered to select the right sysvec based on OS and ABI version from the
note.
2. The EI_OSABI and EI_ABIVERSION fields were in the gABI spec before
anyone started using .note sections for this.
But there has since been agreement to use the .note sections. One good
reason is that it keeps OS specifics out of binutils, and makes it
possible to cross compile for another OS on the same architecture.
You'd have to alter binutils to change the default EI_ABIVERSION or
EI_OSABI field. If you do, how do you compile for the old ABI? The
ABI-tags method would allow binutils to support both ABI's, by linking
with a different copy of /usr/lib/crt1.o.
---Nathan
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3CD894DA.6060602>
