1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-01 10:06:57 +03:00

* 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.
This commit is contained in:
Ulrich Drepper
2008-04-11 21:04:10 +00:00
parent 7763d4f148
commit cf3a8c7f42
3 changed files with 15 additions and 3 deletions

View File

@ -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" \
@ -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) : \