Subject: dynamic a.out questions
To: None <tech-toolchain@netbsd.org>
From: Matthew Fredette <fredette@MIT.EDU>
List: tech-toolchain
Date: 05/19/2000 11:07:08
Hi all.  I've been reading the source to the old a.out ld and ld.so,
but couldn't really get the answers to these questions about the old
a.out format:

What is the motivation for r_copy relocations?  They're used when main
programs refer to initialized dynamic data, right?  Are they just an
optimization to make a per-process copy of the data to avoid any
chance of a copy-on-write of the original mmap'ed library page?

I ask because I've been working on a patch to stock GNU binutils-2.9.1
to fully support the NetBSD dynamic a.out format.  I've got ld working
well for m68k, generating dynamic executables and libraries; but it
has no logic for emitting r_copy relocations.  If they are just an
optimization, I'd rather skip them :)

Also, I just went through the tech-toolchain archives for the first
time this morning, and it sounds like Krister Walfridsson has been doing
similar work.  Is that close to done?  If so, I'd rather just wait for
what is sure to be a better solution than mine.

Please cc: me on replies, as I don't subscribe to tech-toolchain.
Thanks in advance -

Matt

--
Matt Fredette
fredette@aquery.com, fredette@mit.edu, fredette@theory.lcs.mit.edu
http://mit.edu/fredette/www
"If you understood everything I said, you'd be me."  - Miles Davis