From: "Måns Rullgård" <mans@mansr.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] armv7: fix linker file for newer ld support
Date: Tue, 02 Nov 2010 17:00:07 +0000 [thread overview]
Message-ID: <yw1xhbfzzmnc.fsf@unicorn.mansr.com> (raw)
In-Reply-To: 4CD03C26.6010109@free.fr
Albert ARIBAUD <albert.aribaud@free.fr> writes:
> Le 02/11/2010 14:08, Steve Sakoman a ?crit :
>> On Tue, Nov 2, 2010 at 12:48 AM, Albert ARIBAUD<albert.aribaud@free.fr> wrote:
>>> Le 02/11/2010 05:05, Steve Sakoman a ?crit :
>>>
>>>> I've been using gcc 4.3.3, so I haven't run into the issue that this
>>>> patch is attempting to fix.
>>>>
>>>> I tested this patch using gcc 4.3.3, and while it produces a usable
>>>> image, it causes the size of the image to grow from 227K to 433K!
>>>>
>>>> So perhaps we need a patch that uses a more restrictive wildcard.
>>>>
>>>> Steve
>>>
>>> Thanks for pointing this out, Steve. That'll go into V3 of my patch set I
>>> guess, as Alexander's patch derives from mine and I most probably hit the
>>> same size increase issue as he does.
>>>
>>> Wolfgang: that may mean the tx25 config file patch is unneeded. Stay tuned.
>>
>> I should have stated that I was using gcc 4.3.3 and binutils 2.18.50,
>> since indeed it does seem to be binutils related.
>>
>> I have had a couple of reports that the following patch works with
>> recent gcc/binutils without increasing the size of the binary.
>>
>> Could others check and report results?
>>
>> Steve
>>
>>
>> ARMV7: Fix build issue with recent versions of gcc/binutils
>> ---
>>
>> diff --git a/arch/arm/cpu/armv7/u-boot.lds b/arch/arm/cpu/armv7/u-boot.lds
>> index 88a0fec..e690b58 100644
>> --- a/arch/arm/cpu/armv7/u-boot.lds
>> +++ b/arch/arm/cpu/armv7/u-boot.lds
>> @@ -55,7 +55,7 @@ SECTIONS
>> }
>> . = ALIGN(4);
>> __rel_dyn_start = .;
>> - .rel.dyn : { *(.rel.dyn) }
>> + .rel.dyn : { *(.rel.*) }
>> __rel_dyn_end = .;
>>
>> __dynsym_start = .;
>
> Weird... This patch seems indeed more restrictive than mine, but the
> input sections collected in .rel.dyn are actually the same for both.
>
> We can gain a bit less than 60k by overlapping .bss and .rel.dyn, but
> certainly not 200k!
>
> OTOH, it happened during my 'cross-build' tests (using one chain's gcc
> with another chain's ld) that the resulting u-boot was drastically
> reduced; but I chalked that to my misusing of the build tools.
>
> Steve, can you indicate which toolchain excatly exhibits the
> 230k-to-430k issue, and which board I should build?
The problem is that the first patch posted here places .rel.dyn after
.bss, so when dumping u-boot.img, all of .bss is included in the file.
Keeping it before .bss allows the flat binary to omit .bss as usual.
Using the patch quoted above, I get a working u-boot from all
combinations of gcc and binutils I cared to try, including gcc
4.5-linaro with binutils 2.20.1.
--
M?ns Rullg?rd
mans at mansr.com
next prev parent reply other threads:[~2010-11-02 17:00 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-02 3:23 [U-Boot] [PATCH] armv7: fix linker file for newer ld support Alexander Holler
2010-11-02 4:05 ` Steve Sakoman
2010-11-02 7:48 ` Albert ARIBAUD
2010-11-02 13:08 ` Steve Sakoman
2010-11-02 16:28 ` Albert ARIBAUD
2010-11-02 16:56 ` Steve Sakoman
2010-11-02 17:00 ` Måns Rullgård [this message]
2010-11-02 17:38 ` Albert ARIBAUD
2010-11-03 12:26 ` Alexander Holler
2010-11-02 10:19 ` Alexander Holler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=yw1xhbfzzmnc.fsf@unicorn.mansr.com \
--to=mans@mansr.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox