[git commit] Revert "*/crt?.S: remove .size directives"

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Thu May 5 07:27:15 UTC 2011


commit: http://git.uclibc.org/uClibc/commit/?id=07464c3e7156f4c8dfcac673c74f19b700b1b3b5
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master

Removing them generally was not a good idea

This reverts commit 233c504cd940d9802226b6a3a092368b86978f5e.
---
 libc/sysdeps/linux/arm/crti.S        |    1 +
 libc/sysdeps/linux/arm/crtn.S        |    2 ++
 libc/sysdeps/linux/avr32/crt1.S      |    1 +
 libc/sysdeps/linux/avr32/crtn.S      |    2 ++
 libc/sysdeps/linux/cris/crt1.S       |    2 ++
 libc/sysdeps/linux/cris/crtn.S       |    2 ++
 libc/sysdeps/linux/frv/crt0.S        |    1 +
 libc/sysdeps/linux/frv/crtn.S        |    2 ++
 libc/sysdeps/linux/h8300/crtn.S      |    2 ++
 libc/sysdeps/linux/i386/crt1.S       |    1 +
 libc/sysdeps/linux/i386/crtn.S       |    2 ++
 libc/sysdeps/linux/microblaze/crtn.S |    2 ++
 libc/sysdeps/linux/mips/crt1.S       |    1 +
 libc/sysdeps/linux/powerpc/crt1.S    |    1 +
 libc/sysdeps/linux/powerpc/crtn.S    |    2 ++
 libc/sysdeps/linux/sh/crt1.S         |    1 +
 libc/sysdeps/linux/sh/crtn.S         |    2 ++
 libc/sysdeps/linux/sh64/crtn.S       |    2 ++
 libc/sysdeps/linux/sparc/crt1.S      |    1 +
 libc/sysdeps/linux/sparc/crtn.S      |    2 ++
 libc/sysdeps/linux/v850/crtn.S       |    2 ++
 libc/sysdeps/linux/vax/crtn.S        |    2 ++
 libc/sysdeps/linux/x86_64/crt1.S     |    1 +
 libc/sysdeps/linux/x86_64/crtn.S     |    2 ++
 24 files changed, 39 insertions(+), 0 deletions(-)

diff --git a/libc/sysdeps/linux/arm/crti.S b/libc/sysdeps/linux/arm/crti.S
index a2d0c03..e335b71 100644
--- a/libc/sysdeps/linux/arm/crti.S
+++ b/libc/sysdeps/linux/arm/crti.S
@@ -63,6 +63,7 @@ _fini:
 _call_via_\register:
 	bx	\register
 	nop
+	.size	_call_via_\register, . - _call_via_\register
 .endm
 
 	@ and calls for the 15 general purpose registers (2 bytes each).
diff --git a/libc/sysdeps/linux/arm/crtn.S b/libc/sysdeps/linux/arm/crtn.S
index a4752c1..de01b38 100644
--- a/libc/sysdeps/linux/arm/crtn.S
+++ b/libc/sysdeps/linux/arm/crtn.S
@@ -15,6 +15,7 @@
 	.arm
 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
 #endif
+	.size	_init, .-_init
 	
 	.section .fini
 	.global	_fini
@@ -28,6 +29,7 @@
 	.arm
 	ldmdb	fp, {r4, r5, r6, r7, r8, r9, sl, fp, sp, pc}
 #endif
+	.size	_fini, .-_fini
 	
 	@ In fact this is modified to 3.4.4
 	.ident	"GCC: (GNU) 3.3.2 20031005 (Debian prerelease)"
diff --git a/libc/sysdeps/linux/avr32/crt1.S b/libc/sysdeps/linux/avr32/crt1.S
index e2a82a5..ca1fa7a 100644
--- a/libc/sysdeps/linux/avr32/crt1.S
+++ b/libc/sysdeps/linux/avr32/crt1.S
@@ -80,6 +80,7 @@ __main_addr:
 ___uClibc_main_addr:
 	.long	__uClibc_main
 #endif
+	.size	_start, . - _start
 
 	/*
 	 * The LSB says we need this.
diff --git a/libc/sysdeps/linux/avr32/crtn.S b/libc/sysdeps/linux/avr32/crtn.S
index c37f7d2..f7d1040 100644
--- a/libc/sysdeps/linux/avr32/crtn.S
+++ b/libc/sysdeps/linux/avr32/crtn.S
@@ -4,9 +4,11 @@
 	.global	_init
 	.type	_init, @function
 	ldm	sp++, r6, pc
+	.size	_init, . - _init
 
 	.section .fini
 	.align	2
 	.global _fini
 	.type	_fini, @function
 	ldm	sp++, r6, pc
+	.size	_fini, . - _fini
diff --git a/libc/sysdeps/linux/cris/crt1.S b/libc/sysdeps/linux/cris/crt1.S
index 1525a2b..b07e36b 100644
--- a/libc/sysdeps/linux/cris/crt1.S
+++ b/libc/sysdeps/linux/cris/crt1.S
@@ -9,6 +9,7 @@
 	.global	__data_start
 	.align	2
 	.type	__data_start, @object
+	.size	__data_start, 4
 __data_start:
 	.dword	0
 
@@ -52,3 +53,4 @@ _start:
 	/* Leave control to the libc */
 	jsr	__uClibc_main
 	nop
+	.size	_start, .-_start
diff --git a/libc/sysdeps/linux/cris/crtn.S b/libc/sysdeps/linux/cris/crtn.S
index 7b2dce1..951ae54 100644
--- a/libc/sysdeps/linux/cris/crtn.S
+++ b/libc/sysdeps/linux/cris/crtn.S
@@ -9,6 +9,7 @@
 	move.d	[$sp+],$r1
 	Ret
 	nop
+	.size	_init, .-_init
 
 	.section	.fini
 	.align	1
@@ -19,3 +20,4 @@
 	move.d	[$sp+],$r1
 	Ret
 	nop
+	.size	_fini, .-_fini
diff --git a/libc/sysdeps/linux/frv/crt0.S b/libc/sysdeps/linux/frv/crt0.S
index a40b67e..a1d07bb 100644
--- a/libc/sysdeps/linux/frv/crt0.S
+++ b/libc/sysdeps/linux/frv/crt0.S
@@ -113,6 +113,7 @@ _start:
 
 	/* Crash if somehow `exit' returns anyways.  */
 	jmpl	@(gr0,gr0)
+.size _start,.-_start
 
 /* Define a symbol for the first piece of initialized data.  */
 	.data
diff --git a/libc/sysdeps/linux/frv/crtn.S b/libc/sysdeps/linux/frv/crtn.S
index bd11901..1d58c02 100644
--- a/libc/sysdeps/linux/frv/crtn.S
+++ b/libc/sysdeps/linux/frv/crtn.S
@@ -32,6 +32,7 @@ Cambridge, MA 02139, USA.  */
 	ld @(sp,gr0), fp
 	addi sp,#16,sp
 	jmpl @(gr5,gr0)
+	.size	_init, .-_init
 	
 	.section .fini,"x"
 	.globl _fini
@@ -40,3 +41,4 @@ Cambridge, MA 02139, USA.  */
 	ld @(sp,gr0), fp
 	addi sp,#16,sp
 	jmpl @(gr5,gr0)
+	.size	_fini, .-_fini
diff --git a/libc/sysdeps/linux/h8300/crtn.S b/libc/sysdeps/linux/h8300/crtn.S
index 8f9fa1f..89e3218 100644
--- a/libc/sysdeps/linux/h8300/crtn.S
+++ b/libc/sysdeps/linux/h8300/crtn.S
@@ -14,6 +14,7 @@
 ; #NO_APP
 	mov.l	@er7+,er6
 	rts
+	.size	__init, .-__init
 ; #APP
 
 	.section .fini
@@ -23,6 +24,7 @@
 ; #NO_APP
 	mov.l	@er7+,er6
 	rts
+	.size	__fini, .-__fini
 ; #APP
 
 	.end
diff --git a/libc/sysdeps/linux/i386/crt1.S b/libc/sysdeps/linux/i386/crt1.S
index 7dfeaf1..a133cb9 100644
--- a/libc/sysdeps/linux/i386/crt1.S
+++ b/libc/sysdeps/linux/i386/crt1.S
@@ -129,6 +129,7 @@ _start:
 #endif
 
 	hlt			/* Crash if somehow `exit' does return.  */
+.size _start,.-_start
 
 /* Define a symbol for the first piece of initialized data.  */
 .data
diff --git a/libc/sysdeps/linux/i386/crtn.S b/libc/sysdeps/linux/i386/crtn.S
index 34d5b38..1912504 100644
--- a/libc/sysdeps/linux/i386/crtn.S
+++ b/libc/sysdeps/linux/i386/crtn.S
@@ -6,6 +6,7 @@
 	popl	%ebx
 	popl	%ebp
 	ret
+.size _init,.-_init
 
 
 
@@ -15,6 +16,7 @@
 	popl	%ebx
 	popl	%ebp
 	ret
+.size _fini,.-_fini
 
 
 
diff --git a/libc/sysdeps/linux/microblaze/crtn.S b/libc/sysdeps/linux/microblaze/crtn.S
index 6f4ef60..da8c920 100644
--- a/libc/sysdeps/linux/microblaze/crtn.S
+++ b/libc/sysdeps/linux/microblaze/crtn.S
@@ -26,6 +26,7 @@
 
 	.end	_init
 $Lfe2:
+	.size	_init,$Lfe2-_init
 
 	.section .fini
 	.align	2
@@ -39,5 +40,6 @@ $Lfe2:
 
 	.end	_fini
 $Lfe3:
+	.size	_fini,$Lfe3-_fini
 
 /*@TRAILER_BEGINS*/
diff --git a/libc/sysdeps/linux/mips/crt1.S b/libc/sysdeps/linux/mips/crt1.S
index 90f69e9..6a80412 100644
--- a/libc/sysdeps/linux/mips/crt1.S
+++ b/libc/sysdeps/linux/mips/crt1.S
@@ -118,6 +118,7 @@ __start:
 hlt:
 	/* Crash if somehow `__uClibc_main' returns anyway.  */
 	b   hlt
+.size __start,.-__start
 .end __start
 
 /* Define a symbol for the first piece of initialized data.  */
diff --git a/libc/sysdeps/linux/powerpc/crt1.S b/libc/sysdeps/linux/powerpc/crt1.S
index de3aa08..4f1494a 100644
--- a/libc/sysdeps/linux/powerpc/crt1.S
+++ b/libc/sysdeps/linux/powerpc/crt1.S
@@ -95,6 +95,7 @@ _start:
 	b	__uClibc_main
 #endif
 
+.size _start,.-_start
 
 /* Define a symbol for the first piece of initialized data.  */
 	.data
diff --git a/libc/sysdeps/linux/powerpc/crtn.S b/libc/sysdeps/linux/powerpc/crtn.S
index 938367c..ba6d0e0 100644
--- a/libc/sysdeps/linux/powerpc/crtn.S
+++ b/libc/sysdeps/linux/powerpc/crtn.S
@@ -9,6 +9,7 @@
 	addi 1,1,32
 	mtlr 0
 	blr
+	.size	_init, .-_init
 	
 	.section .fini
 	.align 2
@@ -19,3 +20,4 @@
 	addi 1,1,32
 	mtlr 0
 	blr
+	.size	_fini, .-_fini
diff --git a/libc/sysdeps/linux/sh/crt1.S b/libc/sysdeps/linux/sh/crt1.S
index 277c55e..9707f83 100644
--- a/libc/sysdeps/linux/sh/crt1.S
+++ b/libc/sysdeps/linux/sh/crt1.S
@@ -104,6 +104,7 @@ _start:
 	nop
 #endif
 
+	.size _start,.-_start
 	.align	2
 
 #ifdef __PIC__
diff --git a/libc/sysdeps/linux/sh/crtn.S b/libc/sysdeps/linux/sh/crtn.S
index e8be7e5..437f8eb 100644
--- a/libc/sysdeps/linux/sh/crtn.S
+++ b/libc/sysdeps/linux/sh/crtn.S
@@ -15,6 +15,7 @@
 	.align 2
 .L6:
 .L7:
+	.size	_init, .-_init
 	
 	.section .fini
 	.hidden  _fini
@@ -30,5 +31,6 @@
 	.align 2
 .L11:
 .L12:
+	.size	_fini, .-_fini
 	
 	.ident	"GCC: (GNU) 3.3.2"
diff --git a/libc/sysdeps/linux/sh64/crtn.S b/libc/sysdeps/linux/sh64/crtn.S
index 501fe91..eb6479a 100644
--- a/libc/sysdeps/linux/sh64/crtn.S
+++ b/libc/sysdeps/linux/sh64/crtn.S
@@ -14,6 +14,7 @@
 	ptabs	r18, tr0
 	addi.l	r15, 16, r15
 	blink	tr0, r63
+	.size	_init, .-_init
 	
 	.section .fini
 	.hidden  _fini
@@ -27,5 +28,6 @@
 	ptabs	r18, tr0
 	addi.l	r15, 16, r15
 	blink	tr0, r63
+	.size	_fini, .-_fini
 	
 	.ident	"GCC: (GNU) 3.3.2"
diff --git a/libc/sysdeps/linux/sparc/crt1.S b/libc/sysdeps/linux/sparc/crt1.S
index 78aaacc..f33a714 100644
--- a/libc/sysdeps/linux/sparc/crt1.S
+++ b/libc/sysdeps/linux/sparc/crt1.S
@@ -123,6 +123,7 @@ _start:
 	illtrap 0
 #endif
 
+.size _start,.-_start
 
 /* Define a symbol for the first piece of initialized data. */
 .data
diff --git a/libc/sysdeps/linux/sparc/crtn.S b/libc/sysdeps/linux/sparc/crtn.S
index d64ffd0..24b4bf4 100644
--- a/libc/sysdeps/linux/sparc/crtn.S
+++ b/libc/sysdeps/linux/sparc/crtn.S
@@ -7,6 +7,7 @@
 	.proc	020
 	ret
 	restore
+	.size	_init, .-_init
 	
 	.section .fini
 	.align 4
@@ -15,3 +16,4 @@
 	.proc	020
 	ret
 	restore
+	.size	_fini, .-_fini
diff --git a/libc/sysdeps/linux/v850/crtn.S b/libc/sysdeps/linux/v850/crtn.S
index 6bb0b39..aecb557 100644
--- a/libc/sysdeps/linux/v850/crtn.S
+++ b/libc/sysdeps/linux/v850/crtn.S
@@ -8,6 +8,7 @@
 	.type	__init, @function
 #NO_APP
 	jr __return_r31
+	.size	__init, .-__init
 #APP
 	
 	.section .fini
@@ -17,6 +18,7 @@
 	.type	__fini, @function
 #NO_APP
 	jr __return_r31
+	.size	__fini, .-__fini
 #APP
 	
 	.ident	"GCC: (GNU) 3.3.2"
diff --git a/libc/sysdeps/linux/vax/crtn.S b/libc/sysdeps/linux/vax/crtn.S
index 1153fd5..6ca5c4f 100644
--- a/libc/sysdeps/linux/vax/crtn.S
+++ b/libc/sysdeps/linux/vax/crtn.S
@@ -9,6 +9,7 @@ __gnu_compiled_c:
 	.type	 _init, at function
 	ret
 .Lfe2:
+	.size	 _init,.Lfe2-_init
 
 	.section .fini
 	.align 1
@@ -16,4 +17,5 @@ __gnu_compiled_c:
 	.type	 _fini, at function
 	ret
 .Lfe3:
+	.size	 _fini,.Lfe3-_fini
 	.ident	"GCC: (GNU) 2.95.2 19991024 (release) (Linux/VAX CVS)"
diff --git a/libc/sysdeps/linux/x86_64/crt1.S b/libc/sysdeps/linux/x86_64/crt1.S
index a21be75..f6c1eb1 100644
--- a/libc/sysdeps/linux/x86_64/crt1.S
+++ b/libc/sysdeps/linux/x86_64/crt1.S
@@ -129,6 +129,7 @@ _start:
 #endif
 
 	hlt        /* Crash if somehow `exit' does return.  */
+.size _start,.-_start
 
 /* Define a symbol for the first piece of initialized data. */
 .data
diff --git a/libc/sysdeps/linux/x86_64/crtn.S b/libc/sysdeps/linux/x86_64/crtn.S
index 9804e0f..5b110d9 100644
--- a/libc/sysdeps/linux/x86_64/crtn.S
+++ b/libc/sysdeps/linux/x86_64/crtn.S
@@ -7,6 +7,7 @@
 .type    _init, %function
 	addq $8, %rsp
 	ret
+.size _init,.-_init
 
 
 .section .fini
@@ -14,3 +15,4 @@
 .type    _fini, %function
 	addq $8, %rsp
 	ret
+.size _fini, .-_fini
-- 
1.7.3.4



More information about the uClibc-cvs mailing list