[GOLD] -Ttext does not relocate as expected
Alan Modra
amodra@gmail.com
Thu Mar 21 02:45:00 GMT 2013
On Wed, Mar 20, 2013 at 06:10:03PM -0700, ryan wrote:
> >>>>> ld -m elf_i386 -N -e start -Ttext 0x7c00 -o boot.out boot.o
It's indirectly caused by -N. I think the sequence of events is:
1) -N puts all input sections into the output .text section, including
a zero size .data
2) this marks the output .text as writable
3) the following code in layout.cc doesn't recognize .text as part of
the text segment
else if (parameters->options().user_set_Ttext()
&& ((*p)->flags() & elfcpp::PF_W) == 0)
{
are_addresses_set = true;
}
4) leading to
if (!are_addresses_set)
{
// Skip the address forward one page, maintaining the same
// position within the page. This lets us store both segments
--
Alan Modra
Australia Development Lab, IBM
More information about the Binutils
mailing list