about summary refs log tree commit diff
path: root/sysdeps/sparc/sparc64/multiarch/memset.S
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2012-02-21 15:42:42 -0800
committerDavid S. Miller <davem@davemloft.net>2012-02-20 17:51:53 -0800
commit3d2b3019e0efa9735370498122ac80298deff8c7 (patch)
tree693771bb0b1fba08098558d99613ce80bc36a923 /sysdeps/sparc/sparc64/multiarch/memset.S
parentc80098a9a05b7d5f8ad1488135f2cee613998c50 (diff)
downloadglibc-3d2b3019e0efa9735370498122ac80298deff8c7.tar.gz
glibc-3d2b3019e0efa9735370498122ac80298deff8c7.tar.xz
glibc-3d2b3019e0efa9735370498122ac80298deff8c7.zip
Use sparc GOTDATA relocations whenever possible.
	* sysdeps/sparc/crti.S: Try to use GOTDATA relocs.
	* sysdeps/sparc/sparc32/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/multiarch/memcpy.S: Likewise.
	* sysdeps/sparc/sparc64/multiarch/memset.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
	(SYSCALL_ERROR_HANDLER): Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/brk.S: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
	(SYSCALL_ERROR_HANDLER): Likewise.
Diffstat (limited to 'sysdeps/sparc/sparc64/multiarch/memset.S')
-rw-r--r--sysdeps/sparc/sparc64/multiarch/memset.S14
1 files changed, 2 insertions, 12 deletions
diff --git a/sysdeps/sparc/sparc64/multiarch/memset.S b/sysdeps/sparc/sparc64/multiarch/memset.S
index bf2eb637e6..13533450c2 100644
--- a/sysdeps/sparc/sparc64/multiarch/memset.S
+++ b/sysdeps/sparc/sparc64/multiarch/memset.S
@@ -25,12 +25,7 @@
 ENTRY(memset)
 	.type	memset, @gnu_indirect_function
 # ifdef SHARED
-	mov	%o7, %o5
-	sethi	%hi(_GLOBAL_OFFSET_TABLE_-4), %o3
-	call	1f
-	 or	%o3, %lo(_GLOBAL_OFFSET_TABLE_+4), %o3
-1:	add	%o7, %o3, %o3
-	mov	%o5, %o7
+	SETUP_PIC_REG_LEAF(o3, o5)
 # endif
 	andcc	%o0, HWCAP_SPARC_BLKINIT, %g0
 	be	9f
@@ -61,12 +56,7 @@ END(memset)
 ENTRY(__bzero)
 	.type	bzero, @gnu_indirect_function
 # ifdef SHARED
-	mov	%o7, %o5
-	sethi	%hi(_GLOBAL_OFFSET_TABLE_-4), %o3
-	call	1f
-	 or	%o3, %lo(_GLOBAL_OFFSET_TABLE_+4), %o3
-1:	add	%o7, %o3, %o3
-	mov	%o5, %o7
+	SETUP_PIC_REG_LEAF(o3, o5)
 # endif
 	andcc	%o0, HWCAP_SPARC_BLKINIT, %g0
 	be	9f