diff options
author | Ulrich Drepper <drepper@redhat.com> | 2008-04-11 21:04:10 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2008-04-11 21:04:10 +0000 |
commit | cf3a8c7f42f7cb3dfd0304ab87ded3b739d9e811 (patch) | |
tree | 2d54fe6c3e473e936e36f5d0997161d93fde37a9 /elf/tls-macros.h | |
parent | 7763d4f148b328df102a0e0d0318cd9f8cf44a56 (diff) | |
download | glibc-cf3a8c7f42f7cb3dfd0304ab87ded3b739d9e811.tar glibc-cf3a8c7f42f7cb3dfd0304ab87ded3b739d9e811.tar.gz glibc-cf3a8c7f42f7cb3dfd0304ab87ded3b739d9e811.tar.bz2 glibc-cf3a8c7f42f7cb3dfd0304ab87ded3b739d9e811.zip |
* 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.
Diffstat (limited to 'elf/tls-macros.h')
-rw-r--r-- | elf/tls-macros.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/elf/tls-macros.h b/elf/tls-macros.h index 37cbe7514f..6463a6c3f9 100644 --- a/elf/tls-macros.h +++ b/elf/tls-macros.h @@ -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) : \ |