[PATCH 4/4] elf: Remove the remaining uses of GET_ADDR_OFFSET
Florian Weimer
fweimer@redhat.com
Fri Dec 27 15:37:26 GMT 2024
Expand the macro where it is used in static definitions of
__tls_get_addr.
---
sysdeps/loongarch/dl-tls.h | 1 -
sysdeps/loongarch/libc-tls.c | 2 +-
sysdeps/m68k/dl-tls.h | 1 -
sysdeps/m68k/libc-tls.c | 2 +-
sysdeps/mips/dl-tls.h | 3 +--
sysdeps/mips/libc-tls.c | 2 +-
sysdeps/powerpc/dl-tls.h | 1 -
sysdeps/riscv/dl-tls.h | 1 -
sysdeps/riscv/libc-tls.c | 2 +-
9 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/sysdeps/loongarch/dl-tls.h b/sysdeps/loongarch/dl-tls.h
index de593c002d..882bf2f6bd 100644
--- a/sysdeps/loongarch/dl-tls.h
+++ b/sysdeps/loongarch/dl-tls.h
@@ -42,7 +42,6 @@ extern void *__tls_get_addr (tls_index *ti);
/* Compute the value for a DTPREL reloc. */
#define TLS_DTPREL_VALUE(sym) ((sym)->st_value - TLS_DTV_OFFSET)
-#define GET_ADDR_OFFSET (ti->ti_offset + TLS_DTV_OFFSET)
#define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET)
/* Value used for dtv entries for which the allocation is delayed. */
diff --git a/sysdeps/loongarch/libc-tls.c b/sysdeps/loongarch/libc-tls.c
index c8d87a8a34..d69a659812 100644
--- a/sysdeps/loongarch/libc-tls.c
+++ b/sysdeps/loongarch/libc-tls.c
@@ -28,5 +28,5 @@ void *
__tls_get_addr (tls_index *ti)
{
dtv_t *dtv = THREAD_DTV ();
- return (char *) dtv[1].pointer.val + GET_ADDR_OFFSET;
+ return (char *) dtv[1].pointer.val + ti->ti_offset + TLS_DTV_OFFSET;
}
diff --git a/sysdeps/m68k/dl-tls.h b/sysdeps/m68k/dl-tls.h
index 967c84f1a2..c7c001d1b7 100644
--- a/sysdeps/m68k/dl-tls.h
+++ b/sysdeps/m68k/dl-tls.h
@@ -42,5 +42,4 @@ typedef struct
extern void *__tls_get_addr (tls_index *ti);
-#define GET_ADDR_OFFSET (ti->ti_offset + TLS_DTV_OFFSET)
#define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET)
diff --git a/sysdeps/m68k/libc-tls.c b/sysdeps/m68k/libc-tls.c
index 10f56189cc..64275899ae 100644
--- a/sysdeps/m68k/libc-tls.c
+++ b/sysdeps/m68k/libc-tls.c
@@ -28,5 +28,5 @@ void *
__tls_get_addr (tls_index *ti)
{
dtv_t *dtv = THREAD_DTV ();
- return (char *) dtv[1].pointer.val + GET_ADDR_OFFSET;
+ return (char *) dtv[1].pointer.val + ti->ti_offset + TLS_DTV_OFFSET;
}
diff --git a/sysdeps/mips/dl-tls.h b/sysdeps/mips/dl-tls.h
index 98bc5962d3..d9b5201f24 100644
--- a/sysdeps/mips/dl-tls.h
+++ b/sysdeps/mips/dl-tls.h
@@ -41,5 +41,4 @@ typedef struct
extern void *__tls_get_addr (tls_index *ti);
-# define GET_ADDR_OFFSET (ti->ti_offset + TLS_DTV_OFFSET)
-# define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET)
+#define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET)
diff --git a/sysdeps/mips/libc-tls.c b/sysdeps/mips/libc-tls.c
index 895f9e7df8..02574fa319 100644
--- a/sysdeps/mips/libc-tls.c
+++ b/sysdeps/mips/libc-tls.c
@@ -28,5 +28,5 @@ void *
__tls_get_addr (tls_index *ti)
{
dtv_t *dtv = THREAD_DTV ();
- return (char *) dtv[1].pointer.val + GET_ADDR_OFFSET;
+ return (char *) dtv[1].pointer.val + ti->ti_offset + TLS_DTV_OFFSET;
}
diff --git a/sysdeps/powerpc/dl-tls.h b/sysdeps/powerpc/dl-tls.h
index 8ed2a41609..be323eab2f 100644
--- a/sysdeps/powerpc/dl-tls.h
+++ b/sysdeps/powerpc/dl-tls.h
@@ -45,7 +45,6 @@ typedef struct
#ifdef SHARED
extern void *__tls_get_addr (tls_index *ti);
-# define GET_ADDR_OFFSET (ti->ti_offset + TLS_DTV_OFFSET)
# define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET)
#endif
diff --git a/sysdeps/riscv/dl-tls.h b/sysdeps/riscv/dl-tls.h
index 049161f02f..ec7c2e038c 100644
--- a/sysdeps/riscv/dl-tls.h
+++ b/sysdeps/riscv/dl-tls.h
@@ -41,7 +41,6 @@ typedef struct
extern void *__tls_get_addr (tls_index *ti);
-#define GET_ADDR_OFFSET (ti->ti_offset + TLS_DTV_OFFSET)
#define __TLS_GET_ADDR(__ti) (__tls_get_addr (__ti) - TLS_DTV_OFFSET)
/* Value used for dtv entries for which the allocation is delayed. */
diff --git a/sysdeps/riscv/libc-tls.c b/sysdeps/riscv/libc-tls.c
index dbf71efa2c..8cb9e52742 100644
--- a/sysdeps/riscv/libc-tls.c
+++ b/sysdeps/riscv/libc-tls.c
@@ -28,5 +28,5 @@ void *
__tls_get_addr (tls_index *ti)
{
dtv_t *dtv = THREAD_DTV ();
- return (char *) dtv[1].pointer.val + GET_ADDR_OFFSET;
+ return (char *) dtv[1].pointer.val + ti->ti_offset + TLS_DTV_OFFSET;
}
--
2.47.1
More information about the Libc-alpha
mailing list