This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: ARM attribute merging oddity
On Fri, Mar 20, 2009 at 09:38:20AM +0000, Andrew Stubbs wrote:
> I think any process that messes with attributes for files that are not
> being changed is wrong (i.e. one input -> one output).
They are being changed though - they're being linked.
> IIRC, most of the tests check whether both inputs are good, and will give
> an error message for either one of them. This means that as multiple files
> are merged, the "out" file's attributes - initially a copy of the first
> "in" file, get continually rechecked, but it's the only way to check the
> first file in the current setup.
>
> If a particular check is missing this, then probably that's a bug.
Should linking two files with an unknown tag and the same value warn
about the output file, or about both input files? Right now, it warns
about the output file:
./ld-new: Warning: tmpdir/dump: Unknown EABI object attribute 82
./ld-new: warning: cannot find entry symbol _start; defaulting to 0000000000008000
If I assemble an empty file and put that at the front of the link,
I get this instead:
./ld-new: Warning: tmpdir/dump0.o: Unknown EABI object attribute 82
./ld-new: Warning: tmpdir/dump1.o: Unknown EABI object attribute 82
./ld-new: warning: cannot find entry symbol _start; defaulting to 0000000000008000
That second one is much more useful. If I put the empty file at the
end of the link, I get this:
./ld-new: Warning: tmpdir/dump: Unknown EABI object attribute 82
./ld-new: Warning: tmpdir/dump: Unknown EABI object attribute 82
./ld-new: warning: cannot find entry symbol _start; defaulting to 0000000000008000
That's least useful of all the options.
--
Daniel Jacobowitz
CodeSourcery