[U-Boot] [PATCH] armv7: fix linker file for newer ld support

Albert ARIBAUD albert.aribaud at free.fr
Tue Nov 2 17:28:22 CET 2010


Le 02/11/2010 14:08, Steve Sakoman a écrit :
> On Tue, Nov 2, 2010 at 12:48 AM, Albert ARIBAUD<albert.aribaud at 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?

Amicalement,
-- 
Albert.


More information about the U-Boot mailing list