summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2005-07-07 02:39:45 +0000
committerUlrich Drepper <drepper@redhat.com>2005-07-07 02:39:45 +0000
commit9f0d7b6df903729a56bc464ff3721e80906933da (patch)
treef472b38af9e806de00c3826373757829c9981227 /sysdeps
parent016c70ea61aa2a896c7862b70e1cf4e705ba21af (diff)
downloadglibc-9f0d7b6df903729a56bc464ff3721e80906933da.tar.gz
glibc-9f0d7b6df903729a56bc464ff3721e80906933da.tar.xz
glibc-9f0d7b6df903729a56bc464ff3721e80906933da.zip
* elf/dl-reloc.c [PROF] (_dl_relocate_object): Define
	consider_profiling always to zero.  Don't count of compiler to
	remove unreached if block.
	* sysdeps/x86_64/dl-trampoline.S [PROF] (_dl_runtime_profile):
	Don't compile.
	* sysdeps/i386/dl-trampoline.S [PROF] (_dl_runtime_profile): Likewise.
	* sysdeps/ia64/dl-trampoline.S [PROF] (_dl_runtime_profile): Likewise.
	* sysdeps/s390/s390-64/dl-trampoline.S [PROF] (_dl_runtime_profile):
	Likewise.
	* sysdeps/s390/s390-32/dl-trampoline.S [PROF] (_dl_runtime_profile):
	Likewise.
	* sysdeps/powerpc/powerpc64/dl-trampoline.S [PROF]
	(_dl_profile_resolve): Likewise.
	* sysdeps/powerpc/powerpc32/dl-trampoline.S [PROF]
	(_dl_profile_resolve): Likewise.
	* gmon/Makefile: Add rules to build and run tst-profile-static.
	* gmon/tst-profile-static.c: New file.
	* Makeconfig (+link-static): Allow passing program-specific flags.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/i386/dl-trampoline.S2
-rw-r--r--sysdeps/ia64/dl-trampoline.S4
-rw-r--r--sysdeps/powerpc/powerpc32/dl-trampoline.S2
-rw-r--r--sysdeps/powerpc/powerpc64/dl-trampoline.S45
-rw-r--r--sysdeps/s390/s390-32/dl-trampoline.S5
-rw-r--r--sysdeps/s390/s390-64/dl-trampoline.S2
-rw-r--r--sysdeps/x86_64/dl-trampoline.S3
7 files changed, 37 insertions, 26 deletions
diff --git a/sysdeps/i386/dl-trampoline.S b/sysdeps/i386/dl-trampoline.S
index 80dd300e86..fd87eb711d 100644
--- a/sysdeps/i386/dl-trampoline.S
+++ b/sysdeps/i386/dl-trampoline.S
@@ -45,6 +45,7 @@ _dl_runtime_resolve:
 	.size _dl_runtime_resolve, .-_dl_runtime_resolve
 
 
+#ifndef PROF
 	.globl _dl_runtime_profile
 	.type _dl_runtime_profile, @function
 	cfi_startproc
@@ -180,3 +181,4 @@ _dl_runtime_profile:
 	ret
 	cfi_endproc
 	.size _dl_runtime_profile, .-_dl_runtime_profile
+#endif
diff --git a/sysdeps/ia64/dl-trampoline.S b/sysdeps/ia64/dl-trampoline.S
index b7969a6cf0..1b31dc7c9c 100644
--- a/sysdeps/ia64/dl-trampoline.S
+++ b/sysdeps/ia64/dl-trampoline.S
@@ -175,7 +175,7 @@ END(_dl_runtime_resolve)
    16byte f13
    16byte f14
    16byte f15
-  
+
   Since stack has to be 16 byte aligned, the stack allocation is in
   16byte increment. Before calling _dl_profile_fixup, the stack will
   look like
@@ -189,6 +189,7 @@ END(_dl_runtime_resolve)
 #define PLTENTER_FRAME_SIZE (4*8 + 8*8 + 8*16 + 2*8 + 16)
 #define PLTEXIT_FRAME_SIZE (PLTENTER_FRAME_SIZE + 4*8 + 8*16)
 
+#ifndef PROF
 ENTRY(_dl_runtime_profile)
 	{ .mii
 	  .prologue
@@ -535,3 +536,4 @@ ENTRY(_dl_runtime_profile)
 	  ;;
 	}
 END(_dl_runtime_profile)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/dl-trampoline.S b/sysdeps/powerpc/powerpc32/dl-trampoline.S
index ea5ce7b45a..506e8022b9 100644
--- a/sysdeps/powerpc/powerpc32/dl-trampoline.S
+++ b/sysdeps/powerpc/powerpc32/dl-trampoline.S
@@ -66,6 +66,7 @@ _dl_runtime_resolve:
 	bctr
 	.size	 _dl_runtime_resolve,.-_dl_runtime_resolve
 
+#ifndef PROF
 	.align 2
 	.globl _dl_prof_resolve
 	.type _dl_prof_resolve,@function
@@ -172,3 +173,4 @@ _dl_prof_resolve:
 	addi r1,r1,320
 	bctr
 	.size	 _dl_prof_resolve,.-_dl_prof_resolve
+#endif
diff --git a/sysdeps/powerpc/powerpc64/dl-trampoline.S b/sysdeps/powerpc/powerpc64/dl-trampoline.S
index 0c617063c9..c90f961615 100644
--- a/sysdeps/powerpc/powerpc64/dl-trampoline.S
+++ b/sysdeps/powerpc/powerpc64/dl-trampoline.S
@@ -26,7 +26,7 @@
    and r11 contains the link_map (from PLT0+16).  The link_map becomes
    parm1 (r3) and the index (r0) need to be converted to an offset
    (index * 24) in parm2 (r4).  */
-   
+
 EALIGN(_dl_runtime_resolve, 4, 0)
 /* We need to save the registers used to pass parameters, ie. r3 thru
    r10; the registers are saved in a stack frame.  */
@@ -139,8 +139,8 @@ END(_dl_runtime_resolve)
 	 * Parameter save area, Allocated by the call, at least 8 double words
 	  +40    TOC save area
 	  +32    Reserved for linker
-	  +24    Reserved for compiler 
-	  +16    LR save area 
+	  +24    Reserved for compiler
+	  +16    LR save area
 	  +8     CR save area
 	r1+0     stack back chain
 	*/
@@ -169,7 +169,7 @@ END(_dl_runtime_resolve)
    and r11 contains the link_map (from PLT0+16).  The link_map becomes
    parm1 (r3) and the index (r0) needs to be converted to an offset
    (index * 24) in parm2 (r4).  */
-   
+#ifndef PROF
 EALIGN(_dl_profile_resolve, 4, 0)
 /* Spill r30, r31 to preserve the link_map* and reloc_addr, in case we
    need to call _dl_call_pltexit.  */
@@ -215,23 +215,23 @@ EALIGN(_dl_profile_resolve, 4, 0)
 	li	r12,64
 	stvx	v2,0,r10
 	stvx	v3,0,r9
-	
+
 	stvx	v4,r11,r10
 	stvx	v5,r11,r9
 	addi	r11,r11,64
-	
+
 	stvx	v6,r12,r10
 	stvx	v7,r12,r9
 	addi	r12,r12,64
-	
+
 	stvx	v8,r11,r10
 	stvx	v9,r11,r9
 	addi	r11,r11,64
-	
+
 	stvx	v10,r12,r10
 	stvx	v11,r12,r9
 	mfspr	r0,VRSAVE
-	
+
 	stvx	v12,r11,r10
 	stvx	v13,r11,r9
 L(saveFP):
@@ -262,7 +262,7 @@ L(saveFP):
 	nop
 /* Test *framesizep > 0 to see if need to do pltexit processing.  */
 	ld	r0,STACK_FRAME(r1)
-/* Put the registers back.  */	
+/* Put the registers back.  */
 	lwz	r12,VR_VRSAVE(r1)
 	cmpdi	cr1,r0,0
 	cmpdi	cr0,r12,0
@@ -275,22 +275,22 @@ L(saveFP):
 	li	r12,64
 	lvx	v2,0,r10
 	lvx	v3,0,r9
-	
+
 	lvx	v4,r11,r10
 	lvx	v5,r11,r9
 	addi	r11,r11,64
-	
+
 	lvx	v6,r12,r10
 	lvx	v7,r12,r9
 	addi	r12,r12,64
-	
+
 	lvx	v8,r11,r10
 	lvx	v9,r11,r9
 	addi	r11,r11,64
-	
+
 	lvx	v10,r12,r10
 	lvx	v11,r12,r9
-	
+
 	lvx	v12,r11,r10
 	lvx	v13,r11,r9
 L(restoreFXR):
@@ -339,22 +339,22 @@ L(do_pltexit):
 	li	r12,64
 	lvx	v2,0,r10
 	lvx	v3,0,r9
-	
+
 	lvx	v4,r11,r10
 	lvx	v5,r11,r9
 	addi	r11,r11,64
-	
+
 	lvx	v6,r12,r10
 	lvx	v7,r12,r9
 	addi	r12,r12,64
-	
+
 	lvx	v8,r11,r10
 	lvx	v9,r11,r9
 	addi	r11,r11,64
-	
+
 	lvx	v10,r12,r10
 	lvx	v11,r12,r9
-	
+
 	lvx	v12,r11,r10
 	lvx	v13,r11,r9
 L(restoreFXR2):
@@ -393,7 +393,7 @@ L(restoreFXR2):
 	lfd	fp13,FPR_PARMS+96(r1)
 /* Call the target function.  */
 	bctrl
-	ld	r2,40(r1)	
+	ld	r2,40(r1)
 	lwz	r12,VR_VRSAVE(r1)
 /* But return here and store the return values.  */
 	std	r3,INT_RTN(r1)
@@ -413,7 +413,7 @@ L(callpltexit):
 	addi	r6,r1,INT_RTN
 	bl	JUMPTARGET(_dl_call_pltexit)
 	nop
-/* Restore the return values from target function.  */	
+/* Restore the return values from target function.  */
 	lwz	r12,VR_VRSAVE(r1)
 	ld	r3,INT_RTN(r1)
 	ld	r4,INT_RTN+8(r1)
@@ -433,3 +433,4 @@ L(pltexitreturn):
 	ld	r1,0(r1)
 	blr
 END(_dl_profile_resolve)
+#endif
diff --git a/sysdeps/s390/s390-32/dl-trampoline.S b/sysdeps/s390/s390-32/dl-trampoline.S
index 4ee2295b89..fbbbc189db 100644
--- a/sysdeps/s390/s390-32/dl-trampoline.S
+++ b/sysdeps/s390/s390-32/dl-trampoline.S
@@ -64,6 +64,7 @@ _dl_runtime_resolve:
 	.size _dl_runtime_resolve, .-_dl_runtime_resolve
 
 
+#ifndef PROF
 	.globl _dl_runtime_profile
 	.type _dl_runtime_profile, @function
 	cfi_startproc
@@ -124,10 +125,10 @@ _dl_runtime_profile:
 5:	l      %r14,7f-5b(%r1)
 	la     %r4,32(%r12)		# pointer to struct La_s390_32_regs
 	la     %r5,72(%r12)		# pointer to struct La_s390_32_retval
-	basr   %r14,%r1			# call _dl_call_pltexit	
+	basr   %r14,%r1			# call _dl_call_pltexit
 	j      1b
 6:	.long  _dl_profile_fixup - 0b
 7:	.long  _dl_call_pltexit - 5b
 	cfi_endproc
 	.size _dl_runtime_profile, .-_dl_runtime_profile
-
+#endif
diff --git a/sysdeps/s390/s390-64/dl-trampoline.S b/sysdeps/s390/s390-64/dl-trampoline.S
index 215d869803..8093582163 100644
--- a/sysdeps/s390/s390-64/dl-trampoline.S
+++ b/sysdeps/s390/s390-64/dl-trampoline.S
@@ -58,6 +58,7 @@ _dl_runtime_resolve:
 	.size _dl_runtime_resolve, .-_dl_runtime_resolve
 
 
+#ifndef PROF
 	.globl _dl_runtime_profile
 	.type _dl_runtime_profile, @function
 	cfi_startproc
@@ -124,3 +125,4 @@ _dl_runtime_profile:
 	j      0b
 	cfi_endproc
 	.size _dl_runtime_profile, .-_dl_runtime_profile
+#endif
diff --git a/sysdeps/x86_64/dl-trampoline.S b/sysdeps/x86_64/dl-trampoline.S
index eb46f29cf2..c1686dae10 100644
--- a/sysdeps/x86_64/dl-trampoline.S
+++ b/sysdeps/x86_64/dl-trampoline.S
@@ -56,7 +56,7 @@ _dl_runtime_resolve:
 	.size _dl_runtime_resolve, .-_dl_runtime_resolve
 
 
-
+#ifndef PROF
 	.globl _dl_runtime_profile
 	.type _dl_runtime_profile, @function
 	.align 16
@@ -186,3 +186,4 @@ _dl_runtime_profile:
 	retq
 	cfi_endproc
 	.size _dl_runtime_profile, .-_dl_runtime_profile
+#endif