diff --git a/sysdeps/aarch64/nptl/Makefile b/sysdeps/aarch64/nptl/Makefile
deleted file mode 100644
index 6d23959e30..0000000000
--- a/sysdeps/aarch64/nptl/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright (C) 2005-2021 Free Software Foundation, Inc.
-#
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/aarch64/nptl/tcb-offsets.sym b/sysdeps/aarch64/nptl/tcb-offsets.sym
deleted file mode 100644
index 238647dd47..0000000000
--- a/sysdeps/aarch64/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
-PTHREAD_MULTIPLE_THREADS_OFFSET		offsetof (struct pthread, header.multiple_threads)
-PTHREAD_TID_OFFSET			offsetof (struct pthread, tid)
-PTHREAD_SIZEOF				sizeof (struct pthread)
diff --git a/sysdeps/aarch64/nptl/tls.h b/sysdeps/aarch64/nptl/tls.h
index 860776bb4b..84916f36b7 100644
--- a/sysdeps/aarch64/nptl/tls.h
+++ b/sysdeps/aarch64/nptl/tls.h
@@ -26,9 +26,6 @@
 # include <stddef.h>
 # include <stdint.h>
 # include <dl-dtv.h>
-
-#else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 #ifndef __ASSEMBLER__
diff --git a/sysdeps/alpha/nptl/Makefile b/sysdeps/alpha/nptl/Makefile
deleted file mode 100644
index fc5567ee55..0000000000
--- a/sysdeps/alpha/nptl/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (C) 2003-2021 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/alpha/nptl/tcb-offsets.sym b/sysdeps/alpha/nptl/tcb-offsets.sym
deleted file mode 100644
index 1005621b37..0000000000
--- a/sysdeps/alpha/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,13 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
---
-
--- Abuse tls.h macros to derive offsets relative to the thread register.
--- # define __builtin_thread_pointer()  ((void *) 0)
--- # define thread_offsetof(mem)     ((void *) &THREAD_SELF->mem - (void *) 0)
--- Ho hum, this doesn't work in gcc4, so Know Things about THREAD_SELF
-#define thread_offsetof(mem)	(long)(offsetof(struct pthread, mem) - sizeof(struct pthread))
-
-MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
-TID_OFFSET			thread_offsetof (tid)
diff --git a/sysdeps/alpha/nptl/tls.h b/sysdeps/alpha/nptl/tls.h
index 860cc46d88..c260078c86 100644
--- a/sysdeps/alpha/nptl/tls.h
+++ b/sysdeps/alpha/nptl/tls.h
@@ -109,8 +109,6 @@ typedef struct
     }									     \
   while (0)
 
-#else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 #endif	/* tls.h */
diff --git a/sysdeps/arc/nptl/Makefile b/sysdeps/arc/nptl/Makefile
deleted file mode 100644
index d85b47416a..0000000000
--- a/sysdeps/arc/nptl/Makefile
+++ /dev/null
@@ -1,22 +0,0 @@
-# NPTL makefile fragment for ARC.
-# Copyright (C) 2020-2021 Free Software Foundation, Inc.
-#
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/arc/nptl/tcb-offsets.sym b/sysdeps/arc/nptl/tcb-offsets.sym
deleted file mode 100644
index 64c432c22e..0000000000
--- a/sysdeps/arc/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
--- Derive offsets relative to the thread register.
-#define thread_offsetof(mem)	(long)(offsetof (struct pthread, mem) - sizeof (struct pthread))
-
-MULTIPLE_THREADS_OFFSET		offsetof (struct pthread, header.multiple_threads)
-TLS_PRE_TCB_SIZE		sizeof (struct pthread)
-TLS_TCB_SIZE            	sizeof (tcbhead_t)
-
-PTHREAD_TID			offsetof (struct pthread, tid)
diff --git a/sysdeps/arm/nptl/Makefile b/sysdeps/arm/nptl/Makefile
index 44154bff37..2e8efe7170 100644
--- a/sysdeps/arm/nptl/Makefile
+++ b/sysdeps/arm/nptl/Makefile
@@ -15,10 +15,6 @@
 # License along with the GNU C Library.  If not, see
 # <https://www.gnu.org/licenses/>.
 
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
-
 ifeq ($(subdir),nptl)
 # This test relies on compiling part of the binary with EH information,
 # part without, and unwinding through.  The .ARM.exidx tables have
diff --git a/sysdeps/arm/nptl/tcb-offsets.sym b/sysdeps/arm/nptl/tcb-offsets.sym
deleted file mode 100644
index bf9c0a1c17..0000000000
--- a/sysdeps/arm/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
---
-
--- Derive offsets relative to the thread register.
-#define thread_offsetof(mem)	(long)(offsetof(struct pthread, mem) - sizeof(struct pthread))
-
-MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
-TID_OFFSET			thread_offsetof (tid)
diff --git a/sysdeps/arm/nptl/tls.h b/sysdeps/arm/nptl/tls.h
index 57e039fc0f..9662da39ab 100644
--- a/sysdeps/arm/nptl/tls.h
+++ b/sysdeps/arm/nptl/tls.h
@@ -26,9 +26,6 @@
 # include <stddef.h>
 # include <stdint.h>
 # include <dl-dtv.h>
-
-#else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 
diff --git a/sysdeps/csky/Makefile b/sysdeps/csky/Makefile
index 0db09dccce..1ced510c2d 100644
--- a/sysdeps/csky/Makefile
+++ b/sysdeps/csky/Makefile
@@ -1,7 +1,3 @@
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
-
 ASFLAGS-.os += $(pic-ccflag)
 
 ifeq ($(subdir),gmon)
diff --git a/sysdeps/csky/nptl/Makefile b/sysdeps/csky/nptl/Makefile
deleted file mode 100644
index a16a8b63ca..0000000000
--- a/sysdeps/csky/nptl/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (C) 2018-2021 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/csky/nptl/tcb-offsets.sym b/sysdeps/csky/nptl/tcb-offsets.sym
deleted file mode 100644
index f1105205c0..0000000000
--- a/sysdeps/csky/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
---
-
--- Derive offsets relative to the thread register.
-#define thread_offsetof(mem)	(long)(offsetof (struct pthread, mem) - sizeof (struct pthread))
-
-MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
-TID_OFFSET			thread_offsetof (tid)
diff --git a/sysdeps/csky/nptl/tls.h b/sysdeps/csky/nptl/tls.h
index 64dcaec279..afd1b3bbb7 100644
--- a/sysdeps/csky/nptl/tls.h
+++ b/sysdeps/csky/nptl/tls.h
@@ -34,7 +34,6 @@
      __result; })
 
 #else
-# include <tcb-offsets.h>
 /* Define r31 as thread pointer register.  */
 # define READ_THREAD_POINTER() \
 	mov r0, r31;
diff --git a/sysdeps/hppa/nptl/Makefile b/sysdeps/hppa/nptl/Makefile
deleted file mode 100644
index 329a57a473..0000000000
--- a/sysdeps/hppa/nptl/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (C) 2005-2021 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/hppa/nptl/tcb-offsets.sym b/sysdeps/hppa/nptl/tcb-offsets.sym
deleted file mode 100644
index 6e852f35b1..0000000000
--- a/sysdeps/hppa/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,17 +0,0 @@
-#include <pthread.h>
-#include <tls.h>
-
-RESULT			offsetof (struct pthread, result)
-TID			offsetof (struct pthread, tid)
-CANCELHANDLING		offsetof (struct pthread, cancelhandling)
-CLEANUP_JMP_BUF		offsetof (struct pthread, cleanup_jmp_buf)
-MULTIPLE_THREADS_OFFSET	offsetof (struct pthread, header.multiple_threads)
-TLS_PRE_TCB_SIZE	sizeof (struct pthread)
-MUTEX_FUTEX		offsetof (pthread_mutex_t, __data.__lock)
-
--- Use a thread_offset when working with asm to make things simpler
--- This way we get the offset of a member in the struct pthread that
--- preceeds the thread pointer (which points to the dtv).
-#define thread_offsetof(mem)    (unsigned int)(offsetof(struct pthread, mem) - sizeof(struct pthread))
-TID_THREAD_OFFSET		thread_offsetof (tid)
-MULTIPLE_THREADS_THREAD_OFFSET	thread_offsetof (header.multiple_threads)
diff --git a/sysdeps/hppa/nptl/tls.h b/sysdeps/hppa/nptl/tls.h
index 62bfb96548..c4039038d3 100644
--- a/sysdeps/hppa/nptl/tls.h
+++ b/sysdeps/hppa/nptl/tls.h
@@ -26,9 +26,6 @@
 # include <stddef.h>
 # include <stdint.h>
 # include <dl-dtv.h>
-
-#else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 #ifndef __ASSEMBLER__
diff --git a/sysdeps/m68k/nptl/Makefile b/sysdeps/m68k/nptl/Makefile
deleted file mode 100644
index ed9ddd1648..0000000000
--- a/sysdeps/m68k/nptl/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (C) 2010-2021 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/m68k/nptl/tcb-offsets.sym b/sysdeps/m68k/nptl/tcb-offsets.sym
deleted file mode 100644
index 241fb8b47c..0000000000
--- a/sysdeps/m68k/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
---
-
--- Derive offsets relative to the thread register.
-#define thread_offsetof(mem)	(long)(offsetof(struct pthread, mem) - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE)
-
-MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
-TID_OFFSET			thread_offsetof (tid)
diff --git a/sysdeps/m68k/nptl/tls.h b/sysdeps/m68k/nptl/tls.h
index 3acedc8465..ab2a1d54bd 100644
--- a/sysdeps/m68k/nptl/tls.h
+++ b/sysdeps/m68k/nptl/tls.h
@@ -26,9 +26,6 @@
 # include <stddef.h>
 # include <stdint.h>
 # include <dl-dtv.h>
-
-#else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 #ifndef __ASSEMBLER__
diff --git a/sysdeps/microblaze/nptl/Makefile b/sysdeps/microblaze/nptl/Makefile
deleted file mode 100644
index 6d23959e30..0000000000
--- a/sysdeps/microblaze/nptl/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright (C) 2005-2021 Free Software Foundation, Inc.
-#
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/microblaze/nptl/tcb-offsets.sym b/sysdeps/microblaze/nptl/tcb-offsets.sym
deleted file mode 100644
index 614f0dfed6..0000000000
--- a/sysdeps/microblaze/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
---
-
--- Abuse tls.h macros to derive offsets relative to the thread register.
-#define thread_offsetof(mem)	(long)(offsetof (struct pthread, mem) - sizeof (struct pthread))
-
-MULTIPLE_THREADS_OFFSET	thread_offsetof (header.multiple_threads)
-TID_OFFSET			thread_offsetof (tid)
diff --git a/sysdeps/microblaze/nptl/tls.h b/sysdeps/microblaze/nptl/tls.h
index de9d2b693b..2ad2219fe5 100644
--- a/sysdeps/microblaze/nptl/tls.h
+++ b/sysdeps/microblaze/nptl/tls.h
@@ -26,9 +26,6 @@
 # include <stddef.h>
 # include <stdint.h>
 # include <dl-dtv.h>
-
-#else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
 #endif /* __ASSEMBLER__ */
 
 #ifndef __ASSEMBLER__
diff --git a/sysdeps/mips/nptl/Makefile b/sysdeps/mips/nptl/Makefile
deleted file mode 100644
index 329a57a473..0000000000
--- a/sysdeps/mips/nptl/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (C) 2005-2021 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library.  If not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/mips/nptl/tcb-offsets.sym b/sysdeps/mips/nptl/tcb-offsets.sym
deleted file mode 100644
index 9ea25b94a8..0000000000
--- a/sysdeps/mips/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
---
-
--- Abuse tls.h macros to derive offsets relative to the thread register.
-#define thread_offsetof(mem)	(long)(offsetof(struct pthread, mem) - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE)
-
-MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
-TID_OFFSET			thread_offsetof (tid)
diff --git a/sysdeps/mips/nptl/tls.h b/sysdeps/mips/nptl/tls.h
index 797e661dc1..ce7c6606be 100644
--- a/sysdeps/mips/nptl/tls.h
+++ b/sysdeps/mips/nptl/tls.h
@@ -50,8 +50,6 @@
 #endif
 
 #else /* __ASSEMBLER__ */
-# include <tcb-offsets.h>
-
 # if __mips_isa_rev >= 2
 #  define READ_THREAD_POINTER(rd) rdhwr	rd, $29
 # else
diff --git a/sysdeps/nios2/Makefile b/sysdeps/nios2/Makefile
index f368a12b2d..825ed1357e 100644
--- a/sysdeps/nios2/Makefile
+++ b/sysdeps/nios2/Makefile
@@ -24,7 +24,3 @@ long-double-fcts = no
 ifeq ($(subdir),soft-fp)
 sysdep_routines += $(gcc-single-routines) $(gcc-double-routines)
 endif
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/riscv/nptl/Makefile b/sysdeps/riscv/nptl/Makefile
deleted file mode 100644
index cca67db324..0000000000
--- a/sysdeps/riscv/nptl/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-# Makefile for sysdeps/riscv/nptl.
-# Copyright (C) 2005-2021 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-#
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with the GNU C Library; if not, see
-# <https://www.gnu.org/licenses/>.
-
-ifeq ($(subdir),csu)
-gen-as-const-headers += tcb-offsets.sym
-endif
diff --git a/sysdeps/riscv/nptl/tcb-offsets.sym b/sysdeps/riscv/nptl/tcb-offsets.sym
deleted file mode 100644
index ab4981f2e2..0000000000
--- a/sysdeps/riscv/nptl/tcb-offsets.sym
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <sysdep.h>
-#include <tls.h>
-
-#define thread_offsetof(mem)	(long)(offsetof (struct pthread, mem) - TLS_TCB_OFFSET - TLS_PRE_TCB_SIZE)
-
-MULTIPLE_THREADS_OFFSET		thread_offsetof (header.multiple_threads)
