diff options
| author | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2013-06-11 14:17:31 +0200 | 
|---|---|---|
| committer | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2013-06-21 23:04:05 +0200 | 
| commit | 09d81184e103a07825d9f16e86e37c28d3605568 (patch) | |
| tree | e0be1af5c25bc5a29c2cb4f897404126821ac0bf | |
| parent | c37980c31a30f0623a0ca8f112298e44039ed6bb (diff) | |
| download | olio-uboot-2014.01-09d81184e103a07825d9f16e86e37c28d3605568.tar.xz olio-uboot-2014.01-09d81184e103a07825d9f16e86e37c28d3605568.zip | |
remove all references to .dynsym
Discard all .dynsym sections from linker scripts
Remove all __dynsym_start definitions from linker scripts
Remove all __dynsym_start references from the codebase
Note: this touches include/asm-generic/sections.h, which
is not ARM-specific, but actual uses of __dynsym_start
are only in ARM, so this patch can safely go through
the ARM repository.
Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
Tested-by: Lubomir Popov <lpopov@mm-sol.com>
Tested-by: Jeroen Hofstee <jeroen@myspectrum.nl>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
| -rw-r--r-- | arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds | 5 | ||||
| -rw-r--r-- | arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds | 5 | ||||
| -rw-r--r-- | arch/arm/cpu/ixp/u-boot.lds | 6 | ||||
| -rw-r--r-- | arch/arm/cpu/u-boot-spl.lds | 6 | ||||
| -rw-r--r-- | arch/arm/cpu/u-boot.lds | 6 | ||||
| -rw-r--r-- | arch/arm/lib/relocate.S | 13 | ||||
| -rw-r--r-- | board/actux1/u-boot.lds | 6 | ||||
| -rw-r--r-- | board/actux2/u-boot.lds | 6 | ||||
| -rw-r--r-- | board/actux3/u-boot.lds | 6 | ||||
| -rw-r--r-- | board/ait/cam_enc_4xx/u-boot-spl.lds | 5 | ||||
| -rw-r--r-- | board/davinci/da8xxevm/u-boot-spl-da850evm.lds | 5 | ||||
| -rw-r--r-- | board/davinci/da8xxevm/u-boot-spl-hawk.lds | 1 | ||||
| -rw-r--r-- | board/dvlhost/u-boot.lds | 6 | ||||
| -rw-r--r-- | board/freescale/mx31ads/u-boot.lds | 6 | ||||
| -rw-r--r-- | board/vpac270/u-boot-spl.lds | 6 | ||||
| -rw-r--r-- | include/asm-generic/sections.h | 3 | 
16 files changed, 9 insertions, 82 deletions
| diff --git a/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds b/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds index 673c725ab..f4e7525f1 100644 --- a/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds +++ b/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds @@ -57,11 +57,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	.bss : {  		. = ALIGN(4);  		__bss_start = .; diff --git a/arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds b/arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds index 967a135b3..446d09501 100644 --- a/arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds +++ b/arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds @@ -57,11 +57,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	.bss : {  		. = ALIGN(4);  		__bss_start = .; diff --git a/arch/arm/cpu/ixp/u-boot.lds b/arch/arm/cpu/ixp/u-boot.lds index 553589ca6..5cfff68e0 100644 --- a/arch/arm/cpu/ixp/u-boot.lds +++ b/arch/arm/cpu/ixp/u-boot.lds @@ -62,11 +62,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  /* @@ -88,6 +83,7 @@ SECTIONS  		KEEP(*(.__bss_end));  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/arch/arm/cpu/u-boot-spl.lds b/arch/arm/cpu/u-boot-spl.lds index 1408f03b2..b6ed25f7d 100644 --- a/arch/arm/cpu/u-boot-spl.lds +++ b/arch/arm/cpu/u-boot-spl.lds @@ -58,11 +58,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  	.bss __rel_dyn_start (OVERLAY) : { @@ -72,6 +67,7 @@ SECTIONS  		__bss_end = .;  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds index d9bbee3b2..fe2ca9817 100644 --- a/arch/arm/cpu/u-boot.lds +++ b/arch/arm/cpu/u-boot.lds @@ -65,11 +65,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  	/* @@ -101,6 +96,7 @@ SECTIONS  		KEEP(*(.__bss_end));  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/arch/arm/lib/relocate.S b/arch/arm/lib/relocate.S index 4446da94c..7a7c4c085 100644 --- a/arch/arm/lib/relocate.S +++ b/arch/arm/lib/relocate.S @@ -56,8 +56,6 @@ copy_loop:  	/*  	 * fix .rel.dyn relocations  	 */ -	ldr	r10, _dynsym_start_ofs	/* r10 <- __dynsym_start local ofs */ -	add	r10, r10, r7		/* r10 <- SRC &__dynsym_start */  	ldr	r2, _rel_dyn_start_ofs	/* r2 <- __rel_dyn_start local ofs */  	add	r2, r2, r7		/* r2 <- SRC &__rel_dyn_start */  	ldr	r3, _rel_dyn_end_ofs	/* r3 <- __rel_dyn_end local ofs */ @@ -69,17 +67,8 @@ fixloop:  	and	r7, r1, #0xff  	cmp	r7, #23			/* relative fixup? */  	beq	fixrel -	cmp	r7, #2			/* absolute fixup? */ -	beq	fixabs  	/* ignore unknown type of fixup */  	b	fixnext -fixabs: -	/* absolute fix: set location to (offset) symbol value */ -	mov	r1, r1, LSR #4		/* r1 <- symbol index in .dynsym */ -	add	r1, r10, r1		/* r1 <- address of symbol in table */ -	ldr	r1, [r1, #4]		/* r1 <- symbol value */ -	add	r1, r1, r9		/* r1 <- relocated sym addr */ -	b	fixnext  fixrel:  	/* relative fix: increase location by offset */  	ldr	r1, [r0] @@ -106,7 +95,5 @@ _rel_dyn_start_ofs:  	.word __rel_dyn_start - relocate_code  _rel_dyn_end_ofs:  	.word __rel_dyn_end - relocate_code -_dynsym_start_ofs: -	.word __dynsym_start - relocate_code  ENDPROC(relocate_code) diff --git a/board/actux1/u-boot.lds b/board/actux1/u-boot.lds index ef4a25bc3..989ad7121 100644 --- a/board/actux1/u-boot.lds +++ b/board/actux1/u-boot.lds @@ -70,11 +70,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  /* @@ -96,6 +91,7 @@ SECTIONS  		KEEP(*(.__bss_end));  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/board/actux2/u-boot.lds b/board/actux2/u-boot.lds index 00ad8b71c..0e206704f 100644 --- a/board/actux2/u-boot.lds +++ b/board/actux2/u-boot.lds @@ -70,11 +70,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  /* @@ -96,6 +91,7 @@ SECTIONS  		KEEP(*(.__bss_end));  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/board/actux3/u-boot.lds b/board/actux3/u-boot.lds index 44b990ee7..b7d29b4af 100644 --- a/board/actux3/u-boot.lds +++ b/board/actux3/u-boot.lds @@ -70,11 +70,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  /* @@ -96,6 +91,7 @@ SECTIONS  		KEEP(*(.__bss_end));  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/board/ait/cam_enc_4xx/u-boot-spl.lds b/board/ait/cam_enc_4xx/u-boot-spl.lds index 1daa1b3b9..39726854c 100644 --- a/board/ait/cam_enc_4xx/u-boot-spl.lds +++ b/board/ait/cam_enc_4xx/u-boot-spl.lds @@ -54,11 +54,6 @@ SECTIONS  		__rel_dyn_end = .;  	} >.sram -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} >.sram -  	.bss :  	{  		. = ALIGN(4); diff --git a/board/davinci/da8xxevm/u-boot-spl-da850evm.lds b/board/davinci/da8xxevm/u-boot-spl-da850evm.lds index b1b870181..6fa450909 100644 --- a/board/davinci/da8xxevm/u-boot-spl-da850evm.lds +++ b/board/davinci/da8xxevm/u-boot-spl-da850evm.lds @@ -55,11 +55,6 @@ SECTIONS  		__rel_dyn_end = .;  	} >.sram -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} >.sram -  	.bss :  	{  		. = ALIGN(4); diff --git a/board/davinci/da8xxevm/u-boot-spl-hawk.lds b/board/davinci/da8xxevm/u-boot-spl-hawk.lds index 596a9e08e..b452f2078 100644 --- a/board/davinci/da8xxevm/u-boot-spl-hawk.lds +++ b/board/davinci/da8xxevm/u-boot-spl-hawk.lds @@ -61,7 +61,6 @@ SECTIONS  	__image_copy_end = .;  	__rel_dyn_start = .;  	__rel_dyn_end = .; -	__dynsym_start = .;  	__got_start = .;  	. = ALIGN(4); diff --git a/board/dvlhost/u-boot.lds b/board/dvlhost/u-boot.lds index 6d4b1875c..ecd9efe8f 100644 --- a/board/dvlhost/u-boot.lds +++ b/board/dvlhost/u-boot.lds @@ -70,11 +70,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  /* @@ -96,6 +91,7 @@ SECTIONS  		KEEP(*(.__bss_end));  	} +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynamic*) }  	/DISCARD/ : { *(.plt*) } diff --git a/board/freescale/mx31ads/u-boot.lds b/board/freescale/mx31ads/u-boot.lds index 496996000..219788314 100644 --- a/board/freescale/mx31ads/u-boot.lds +++ b/board/freescale/mx31ads/u-boot.lds @@ -73,11 +73,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	_end = .;  /* @@ -100,6 +95,7 @@ SECTIONS  	}  	/DISCARD/ : { *(.bss*) } +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynsym*) }  	/DISCARD/ : { *(.dynamic*) } diff --git a/board/vpac270/u-boot-spl.lds b/board/vpac270/u-boot-spl.lds index 61d1154af..1a3ef9285 100644 --- a/board/vpac270/u-boot-spl.lds +++ b/board/vpac270/u-boot-spl.lds @@ -67,11 +67,6 @@ SECTIONS  		__rel_dyn_end = .;  	} -	.dynsym : { -		__dynsym_start = .; -		*(.dynsym) -	} -  	. = ALIGN(0x800);  	_end = .; @@ -84,6 +79,7 @@ SECTIONS  	}  	/DISCARD/ : { *(.bss*) } +	/DISCARD/ : { *(.dynsym) }  	/DISCARD/ : { *(.dynstr*) }  	/DISCARD/ : { *(.dynsym*) }  	/DISCARD/ : { *(.dynamic*) } diff --git a/include/asm-generic/sections.h b/include/asm-generic/sections.h index 4b3984454..3e32eee92 100644 --- a/include/asm-generic/sections.h +++ b/include/asm-generic/sections.h @@ -90,9 +90,6 @@ extern void _start(void);  extern ulong _rel_dyn_start_ofs;  extern ulong _rel_dyn_end_ofs; -/* Start/end of the relocation symbol table, as an offset from _start */ -extern ulong _dynsym_start_ofs; -  /* End of the region to be relocated, as an offset form _start */  extern ulong _image_copy_end_ofs; |