Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ELF extensions for new machines (32-bit and 64-bit)

9 views
Skip to first unread message

Ken Raeburn

unread,
Jul 25, 1993, 6:15:00 PM7/25/93
to

I was talking to a friend not too long ago about some work he was doing.
His company is working on a compiler toolchain for a 64-bit chip, using
some extensions they had come up with to ELF to handle the wider values.
He wasn't sure which details had been released yet, so I don't have much
more than that.

The only ELF documentation I've heard of that's available to the public is
on the 32-bit version. I've got the SysV ABI and some processor
supplements from AT&T. (I tried Quantum Books here in Cambridge, looking
for more info, but they didn't even have the 386 supplement, and told me
it was out of print. Anyone want to unload a copy or two of that one?)

Anyways, since I'm working on support for (32-bit) ELF in the GNU
assembler, linker, and binutils right now (for SPARC mostly, other systems
coming later, with some work being contributed by others), I'd like to
start finding out what additional information I can. (BTW, no, I don't
know when dynamic linking will be added to these tools.)

For example, the ABI listed machine numbers for a half dozen or so
machines. (I don't have it in front of me, but I'm pretty sure it was
less than a dozen, total.) Does any organization coordinate the
assignment of numbers for processors not on that list?

I'm sure there are plenty of books on svr4; are any particularly clear on
describing the executable file formats or their use?

And is there a group someplace making an Official Specification for 64-bit
ELF for everyone to adhere to, or will each vendor of these new chips make
up its own set of changes to the 32-bit spec?

Thanks for any suggestions you can give...

Ken

P.S. Is there some other newsgroup I should ask too? None jumped out at
me, but with over 3000 on our server, I could've missed one or two.

Ronald F. Guilmette

unread,
Jul 25, 1993, 7:29:43 PM7/25/93
to
In article <RAEBURN.93...@cambridge.cygnus.com> rae...@athena.mit.edu (Ken Raeburn) writes:
>
>I was talking to a friend not too long ago about some work he was doing.
>His company is working on a compiler toolchain for a 64-bit chip, using
>some extensions they had come up with to ELF to handle the wider values.
>He wasn't sure which details had been released yet, so I don't have much
>more than that.

C'mon Ken. You can tell us. What's the chip? Who's the company? Hey!
There's only a few thousand of us here, and we'll never tell! :-)

>The only ELF documentation I've heard of that's available to the public is
>on the 32-bit version. I've got the SysV ABI and some processor
>supplements from AT&T. (I tried Quantum Books here in Cambridge, looking
>for more info, but they didn't even have the 386 supplement, and told me
>it was out of print. Anyone want to unload a copy or two of that one?)

What you need is a book called "SYSTEM V RELEASE 4 Programmer's Guide:
ANSI C and Programming Support Tools" (ISBN 0-13-933706-7). In particular,
shapter 13 has all the low-down on ELF.

Obviously, conditions on the East Coast are rather primitive (snicker, snicker)
so I'll give you a number for one of our superior West Coast bookstores that
ought to be able to mail you a copy. Try Computer Literacy at 408-435-1118.

>Anyways, since I'm working on support for (32-bit) ELF in the GNU
>assembler, linker, and binutils right now (for SPARC mostly, other systems
>coming later, with some work being contributed by others), I'd like to
>start finding out what additional information I can. (BTW, no, I don't
>know when dynamic linking will be added to these tools.)
>
>For example, the ABI listed machine numbers for a half dozen or so
>machines. (I don't have it in front of me, but I'm pretty sure it was
>less than a dozen, total.) Does any organization coordinate the
>assignment of numbers for processors not on that list?

Think USL.

>I'm sure there are plenty of books on svr4; are any particularly clear on
>describing the executable file formats or their use?

See above.

>And is there a group someplace making an Official Specification for 64-bit
>ELF for everyone to adhere to, or will each vendor of these new chips make
>up its own set of changes to the 32-bit spec?

Page 13-8 of the above mentioned book describes the EI_CLASS element of the
e_ident member of the Elf32_Ehdr type. The list of possible values for
this array element includes the symbolic constant:

ELFCLASS64 (value 2) /* 64-bit objects */

Later text on the same page says:

"Class ELFCLASS64 is reserved for 64-bit architectures. Its
appearance here shows how the object file may change, but the
64-bit format is otherwise unspecified. Other classes will be
defined as necessary, with different basic types and sizes for
object file data."

Obviously, this doesn't give the whole story. I think that every major
microprocessor vendor has a 64 bit part somewhere in the pipeline, and
there is undoubetdly code being written for the ones that are getting
close to the public (i.e. "announced") end of the pipe. Some subset of
those efforts are probably going with ELF and/or SVR4, and that subset
(of chip vendors) has probably already worked out how they each plan to
do 64-bit ELF, but good luck getting them to talk about it in public.

Note that it isn't even necessarily a matter of secrecy relating to the
chips. Companies are also often loath to give out system software details
for software they're not shipping yet, as doing so tends to be viewed as
a "commitment" to a particular approach (or format) by their respective
customer bases. (This "fear of commitment" seems to be a male thing. For
more info, read Cosmopolitian magazine. :-)

>P.S. Is there some other newsgroup I should ask too? None jumped out at
>me, but with over 3000 on our server, I could've missed one or two.

Nope, but the UI/PLSIG group (i.e. UNIX International Programming Languages
Special Interest Group) is open to the public and has its own mailing list
on which ELF and DWARF are the most common topics. For more info, contact
our chairman, Dan Oldman @ Data General, <old...@dg-rtp.dg.com>.

--

-- Ronald F. Guilmette ------------------------------------------------------
------ domain address: r...@netcom.com ---------------------------------------
------ uucp address: ...!uunet!netcom.com!rfg -------------------------------

Eric Youngdale

unread,
Jul 26, 1993, 5:03:05 PM7/26/93
to
In article <rfgCAq...@netcom.com> r...@netcom.com (Ronald F. Guilmette) writes:
>What you need is a book called "SYSTEM V RELEASE 4 Programmer's Guide:
>ANSI C and Programming Support Tools" (ISBN 0-13-933706-7). In particular,
>shapter 13 has all the low-down on ELF.

I second this. I was able to set things up so that linux could run
some SVr4 ELF binaries by using the information in this book. It was really
pretty easy, actually.

>Obviously, conditions on the East Coast are rather primitive (snicker, snicker)
>so I'll give you a number for one of our superior West Coast bookstores that
>ought to be able to mail you a copy. Try Computer Literacy at 408-435-1118.

I found a copy in Reiters Scientific Bookstore on K street in DC. Not
quite Boston, but at least it is on the East Coast. Actually, the SVr4 books
had all of the material rearranged (the new ones no longer have something like
red white and black covers instead of the the blue covers found on the old
set), so the ELF stuff may be in a different volume now.

-Eric
--
"When Gregor Samsa woke up one morning from unsettling dreams, he
found himself changed in his bed into a lawyer."

0 new messages