]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
arm: Remove ld.so __tls_get_addr plt usage
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Thu, 4 Apr 2024 20:03:32 +0000 (17:03 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Thu, 4 Apr 2024 20:03:32 +0000 (17:03 -0300)
Use the hidden alias instead.

Checked on arm-linux-gnueabihf.

sysdeps/arm/dl-tlsdesc.S
sysdeps/unix/sysv/linux/arm/localplt.data

index ada106521da8971aa839b70543b745dddaab3bb2..e36a32859f63f0acf9ca894d6e7aacf711ff2785 100644 (file)
@@ -147,7 +147,7 @@ _dl_tlsdesc_dynamic:
 4:     .inst   0xeef12a10      /* vmrs r2, fpscr */
        str     r2, [r3]
 .Lno_vfp:
-       bl      __tls_get_addr
+       bl      HIDDEN_JUMPTARGET(__tls_get_addr)
        rsb     r0, r4, r0
 #ifdef __SOFTFP__
        tst     r5, #HWCAP_ARM_VFP
@@ -181,6 +181,7 @@ _dl_tlsdesc_dynamic:
        eabi_fnend
        cfi_endproc
        .size   _dl_tlsdesc_dynamic, .-_dl_tlsdesc_dynamic
+       .hidden HIDDEN_JUMPTARGET(__tls_get_addr)
 
 3:      .long   _GLOBAL_OFFSET_TABLE_ - 0b - PC_OFS
 .Lrtld_global_ro:
index 162c664a010856955a75ad819bc6f14f6a31bdd8..5d131a79216eca6354077d73e76c59000ffddb33 100644 (file)
@@ -4,5 +4,3 @@ libc.so: malloc
 libc.so: raise
 libc.so: realloc
 libm.so: matherr
-# The dynamic loader needs __tls_get_addr for TLS.
-ld.so: __tls_get_addr