Load addresses for ELF program headers on ARM

Matt Fischer mattfischer84@gmail.com
Mon Oct 11 15:21:00 GMT 2010


On Mon, Oct 11, 2010 at 9:44 AM, Daniel Jacobowitz <dan@codesourcery.com> wrote:
> On Sun, Oct 10, 2010 at 10:38:59PM -0500, Matt Fischer wrote:
>> On Sun, Oct 10, 2010 at 10:29 PM, Alan Modra <amodra@gmail.com> wrote:
>> > On Sun, Oct 10, 2010 at 09:43:27PM -0500, Matt Fischer wrote:
>> >> However, when I do this, it creates one gigantic segment which has
>> >> both sections at their relocation addresses, and zero-fills the 200MB
>> >> or so in between them.  It seems like the linker is not correctly
>> >> respecting load addresses when it tries to fit sections into segments.
>> >>  Is that something that can be gotten around somehow?
>> >
>> > This is a 2.20 bug.  With current mainline you'll get a warning
>> >  section `DATA' can't be allocated in segment 0
>> > but ld will place DATA immediately after TEXT in the segment.  The
>> > warning is because the VMA for DATA is outside the virtual addresses
>> > covered by your program header.  (The warning should probably say
>> > something to that effect rather than "can't be allocated" when the
>> > section *is* allocated there.)
>>
>> Ah, excellent.  Ok, so I'll just patch the binaries for now, and then
>> pick up that change once it's available.  Dan, any idea when that fix
>> will make its way into Sourcery Lite?
>
> A bit off topic for this list but... If this fix is in
> assign_file_positions_for_load_sections, which I think it is,
> then it will be in our November releases.

Perfect.  Thanks to both of you for all your help with this.

--Matt

P.S.  Dan--sorry, you're right, I should have queried for the Sourcery
info elsewhere.  Thanks for obliging me, though. :)



More information about the Binutils mailing list