summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2018-01-06 18:18:49 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2018-01-06 18:20:18 +0100
commit4a5ce6e908c6b45d976fb78b65434b489dc570b6 (patch)
tree5edeb5116e4748b00bc82be2c4247b424a207fd8
parentfad7d57ef94bbb0254042cd213b6be2714c69df1 (diff)
downloadglibc-4a5ce6e908c6b45d976fb78b65434b489dc570b6.tar.gz
hurd: Fix build without NO_HIDDEN
* sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic) [NO_RTLD_HIDDEN]: Call JUMPTARGET (___tls_get_addr) instead of HIDDEN_JUMPTARGET (___tls_get_addr). * sysdeps/x86_64/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Likewise.
-rw-r--r--ChangeLog4
-rw-r--r--sysdeps/i386/dl-tlsdesc.S4
-rw-r--r--sysdeps/x86_64/dl-tlsdesc.S4
3 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 8833b1da33..ed8762118b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,10 @@
2018-01-06 Samuel Thibault <samuel.thibault@ens-lyon.org>
* sysdeps/mach/hurd/i386/jmp_buf-macros.h: New file.
+ * sysdeps/i386/dl-tlsdesc.S (_dl_tlsdesc_dynamic) [NO_RTLD_HIDDEN]: Call
+ JUMPTARGET (___tls_get_addr) instead of HIDDEN_JUMPTARGET
+ (___tls_get_addr).
+ * sysdeps/x86_64/dl-tlsdesc.S (_dl_tlsdesc_dynamic): Likewise.
2018-01-05 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
diff --git a/sysdeps/i386/dl-tlsdesc.S b/sysdeps/i386/dl-tlsdesc.S
index 8c2c40b7ec..2c4764d1aa 100644
--- a/sysdeps/i386/dl-tlsdesc.S
+++ b/sysdeps/i386/dl-tlsdesc.S
@@ -126,7 +126,11 @@ _dl_tlsdesc_dynamic:
.p2align 4,,7
.Lslow:
cfi_adjust_cfa_offset (28)
+#ifdef NO_RTLD_HIDDEN
+ call JUMPTARGET (___tls_get_addr)
+#else
call HIDDEN_JUMPTARGET (___tls_get_addr)
+#endif
jmp .Lret
cfi_endproc
.size _dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
diff --git a/sysdeps/x86_64/dl-tlsdesc.S b/sysdeps/x86_64/dl-tlsdesc.S
index 6c4e6b6c91..437bd8cde7 100644
--- a/sysdeps/x86_64/dl-tlsdesc.S
+++ b/sysdeps/x86_64/dl-tlsdesc.S
@@ -128,7 +128,11 @@ _dl_tlsdesc_dynamic:
movq %r10, 40(%rsp)
movq %r11, 48(%rsp)
/* %rdi already points to the tlsinfo data structure. */
+#ifdef NO_RTLD_HIDDEN
+ call JUMPTARGET (__tls_get_addr)
+#else
call HIDDEN_JUMPTARGET (__tls_get_addr)
+#endif
movq 8(%rsp), %rdx
movq 16(%rsp), %rcx
movq 24(%rsp), %r8