Skip to content

Commit

Permalink
* elf/tls-macros.h (__TLS_GET_ADDR): Define according to the ABI
Browse files Browse the repository at this point in the history
	in use.
	(TLS_LD): Use __TLS_GET_ADDR instead of .__tls_get_addr.
	(TLS_GD): Likewise.
  • Loading branch information
Ulrich Drepper committed Apr 11, 2008
1 parent 7763d4f commit cf3a8c7
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 3 deletions.
7 changes: 7 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
2008-04-11 Ulrich Drepper <drepper@redhat.com>

* elf/tls-macros.h (__TLS_GET_ADDR): Define according to the ABI
in use.
(TLS_LD): Use __TLS_GET_ADDR instead of .__tls_get_addr.
(TLS_GD): Likewise.

2007-11-20 Ryan S. Arnold <rsa@us.ibm.com>

[BZ #4997]
Expand Down
9 changes: 7 additions & 2 deletions elf/tls-macros.h
Original file line number Diff line number Diff line change
Expand Up @@ -813,12 +813,17 @@ register void *__gp __asm__("$29");
: "=b" (__result) ); \
__result; \
})
# ifdef HAVE_ASM_GLOBAL_DOT_NAME
# define __TLS_GET_ADDR ".__tls_get_addr"
# else
# define __TLS_GET_ADDR "__tls_get_addr"
# endif
/* PowerPC64 Local Dynamic TLS access. */
# define TLS_LD(x) \
({ int * __result; \
asm ( \
" addi 3,2," #x "@got@tlsld\n" \
" bl .__tls_get_addr\n" \
" bl " __TLS_GET_ADDR "\n" \
" nop \n" \
" addis %0,3," #x "@dtprel@ha\n" \
" addi %0,%0," #x "@dtprel@l\n" \
Expand All @@ -834,7 +839,7 @@ register void *__gp __asm__("$29");
({ int * __result; \
asm ( \
" addi 3,2," #x "@got@tlsgd\n" \
" bl .__tls_get_addr\n" \
" bl " __TLS_GET_ADDR "\n" \
" nop \n" \
" mr %0,3\n" \
: "=b" (__result) : \
Expand Down
2 changes: 1 addition & 1 deletion sysdeps/i386/i686/memcpy.S
Original file line number Diff line number Diff line change
Expand Up @@ -71,10 +71,10 @@ ENTRY (BP_SYM (memcpy))
1: pushl %eax
movl %ecx, %eax
shrl $2, %ecx
andl $3, %eax
rep
movsl
movl %eax, %ecx
andl $3, %ecx
rep
movsb
popl %eax
Expand Down

0 comments on commit cf3a8c7

Please sign in to comment.