[6/7] nptl: Add default pthread-offsets.h

Message ID 20191106175001.12182-6-adhemerval.zanella@linaro.org
State New
Headers show
Series
  • [1/7] nptl: Add tests for internal pthread_rwlock_t offsets
Related show

Commit Message

Adhemerval Zanella Nov. 6, 2019, 5:50 p.m.
This patch adds a default pthread-offsets.h based on default
thread definitions from mutex-internal.h and rwlock-internal.h.
The idea is to simpify new ports inclusion.

Checked with a build on affected abis.
---
 sysdeps/aarch64/nptl/pthread-offsets.h    | 13 --------
 sysdeps/alpha/nptl/pthread-offsets.h      | 13 --------
 sysdeps/arm/nptl/pthread-offsets.h        | 18 -----------
 sysdeps/csky/nptl/pthread-offsets.h       | 13 --------
 sysdeps/ia64/nptl/pthread-offsets.h       | 13 --------
 sysdeps/m68k/nptl/pthread-offsets.h       | 13 --------
 sysdeps/microblaze/nptl/pthread-offsets.h | 18 -----------
 sysdeps/nios2/nptl/pthread-offsets.h      | 13 --------
 sysdeps/nptl/pthread-offsets.h            | 39 +++++++++++++++++++++++
 sysdeps/riscv/nptl/pthread-offsets.h      | 32 -------------------
 sysdeps/sh/nptl/pthread-offsets.h         | 18 -----------
 sysdeps/sparc/nptl/pthread-offsets.h      | 33 -------------------
 12 files changed, 39 insertions(+), 197 deletions(-)
 delete mode 100644 sysdeps/aarch64/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/alpha/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/arm/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/csky/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/ia64/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/m68k/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/microblaze/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/nios2/nptl/pthread-offsets.h
 create mode 100644 sysdeps/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/riscv/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/sh/nptl/pthread-offsets.h
 delete mode 100644 sysdeps/sparc/nptl/pthread-offsets.h

-- 
2.17.1

Patch

diff --git a/sysdeps/aarch64/nptl/pthread-offsets.h b/sysdeps/aarch64/nptl/pthread-offsets.h
deleted file mode 100644
index 679cec5de7..0000000000
--- a/sysdeps/aarch64/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,13 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   12
-#define __PTHREAD_MUTEX_KIND_OFFSET     16
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     24
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     24
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         28
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          48
diff --git a/sysdeps/alpha/nptl/pthread-offsets.h b/sysdeps/alpha/nptl/pthread-offsets.h
deleted file mode 100644
index 679cec5de7..0000000000
--- a/sysdeps/alpha/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,13 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   12
-#define __PTHREAD_MUTEX_KIND_OFFSET     16
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     24
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     24
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         28
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          48
diff --git a/sysdeps/arm/nptl/pthread-offsets.h b/sysdeps/arm/nptl/pthread-offsets.h
deleted file mode 100644
index cc2a939222..0000000000
--- a/sysdeps/arm/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,18 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-#define __PTHREAD_MUTEX_KIND_OFFSET     12
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     20
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-#if __BYTE_ORDER == __BIG_ENDIAN
-# define __PTHREAD_RWLOCK_SHARED_OFFSET        26
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET         27
-#else
-# define __PTHREAD_RWLOCK_SHARED_OFFSET        25
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET         24
-#endif
diff --git a/sysdeps/csky/nptl/pthread-offsets.h b/sysdeps/csky/nptl/pthread-offsets.h
deleted file mode 100644
index a0eea7a6d3..0000000000
--- a/sysdeps/csky/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,13 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-#define __PTHREAD_MUTEX_KIND_OFFSET     12
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     20
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         25
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          24
diff --git a/sysdeps/ia64/nptl/pthread-offsets.h b/sysdeps/ia64/nptl/pthread-offsets.h
deleted file mode 100644
index 679cec5de7..0000000000
--- a/sysdeps/ia64/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,13 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   12
-#define __PTHREAD_MUTEX_KIND_OFFSET     16
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     24
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     24
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         28
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          48
diff --git a/sysdeps/m68k/nptl/pthread-offsets.h b/sysdeps/m68k/nptl/pthread-offsets.h
deleted file mode 100644
index 14d66ace9b..0000000000
--- a/sysdeps/m68k/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,13 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-#define __PTHREAD_MUTEX_KIND_OFFSET     12
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     20
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         26
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          27
diff --git a/sysdeps/microblaze/nptl/pthread-offsets.h b/sysdeps/microblaze/nptl/pthread-offsets.h
deleted file mode 100644
index cc2a939222..0000000000
--- a/sysdeps/microblaze/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,18 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-#define __PTHREAD_MUTEX_KIND_OFFSET     12
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     20
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-#if __BYTE_ORDER == __BIG_ENDIAN
-# define __PTHREAD_RWLOCK_SHARED_OFFSET        26
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET         27
-#else
-# define __PTHREAD_RWLOCK_SHARED_OFFSET        25
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET         24
-#endif
diff --git a/sysdeps/nios2/nptl/pthread-offsets.h b/sysdeps/nios2/nptl/pthread-offsets.h
deleted file mode 100644
index a0eea7a6d3..0000000000
--- a/sysdeps/nios2/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,13 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-#define __PTHREAD_MUTEX_KIND_OFFSET     12
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     20
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         25
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          24
diff --git a/sysdeps/nptl/pthread-offsets.h b/sysdeps/nptl/pthread-offsets.h
new file mode 100644
index 0000000000..eb87d51351
--- /dev/null
+++ b/sysdeps/nptl/pthread-offsets.h
@@ -0,0 +1,39 @@ 
+#include <bits/wordsize.h>
+
+/* These values are based on internal generic types from
+   mutex-internal.h and rwlock-internal.h.  */
+
+#if __WORDSIZE == 64
+# define __PTHREAD_MUTEX_NUSERS_OFFSET          12
+# define __PTHREAD_MUTEX_KIND_OFFSET            16
+# define __PTHREAD_MUTEX_SPINS_OFFSET           20
+# define __PTHREAD_MUTEX_LIST_OFFSET            24
+#else
+# define __PTHREAD_MUTEX_NUSERS_OFFSET          16
+# define __PTHREAD_MUTEX_KIND_OFFSET            12
+# define __PTHREAD_MUTEX_SPINS_OFFSET           20
+# define __PTHREAD_MUTEX_LIST_OFFSET            20
+#endif
+
+#if __WORDSIZE == 64
+# define __PTHREAD_RWLOCK_READERS_OFFSET         0
+# define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
+# define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
+# define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
+# define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     24
+# define __PTHREAD_RWLOCK_SHARED_OFFSET         28
+# define __PTHREAD_RWLOCK_FLAGS_OFFSET          48
+#else
+# define __PTHREAD_RWLOCK_READERS_OFFSET         0
+# define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
+# define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
+# define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
+# define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
+# if __BYTE_ORDER == __BIG_ENDIAN
+#  define __PTHREAD_RWLOCK_SHARED_OFFSET        26
+#  define __PTHREAD_RWLOCK_FLAGS_OFFSET         27
+# else
+#  define __PTHREAD_RWLOCK_SHARED_OFFSET        25
+#  define __PTHREAD_RWLOCK_FLAGS_OFFSET         24
+# endif
+#endif
diff --git a/sysdeps/riscv/nptl/pthread-offsets.h b/sysdeps/riscv/nptl/pthread-offsets.h
deleted file mode 100644
index f93af00cfc..0000000000
--- a/sysdeps/riscv/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,32 +0,0 @@ 
-/* RISC-V pthread offsets
-   Copyright (C) 2017-2019 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/>.  */
-
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   12
-#define __PTHREAD_MUTEX_KIND_OFFSET     16
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     24
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     24
-#define __PTHREAD_RWLOCK_SHARED_OFFSET         28
-#define __PTHREAD_RWLOCK_FLAGS_OFFSET          48
diff --git a/sysdeps/sh/nptl/pthread-offsets.h b/sysdeps/sh/nptl/pthread-offsets.h
deleted file mode 100644
index cc2a939222..0000000000
--- a/sysdeps/sh/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,18 +0,0 @@ 
-#define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-#define __PTHREAD_MUTEX_KIND_OFFSET     12
-#define __PTHREAD_MUTEX_SPINS_OFFSET    20
-#define __PTHREAD_MUTEX_ELISION_OFFSET  22
-#define __PTHREAD_MUTEX_LIST_OFFSET     20
-
-#define __PTHREAD_RWLOCK_READERS_OFFSET         0
-#define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-#define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-#define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-#define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-#if __BYTE_ORDER == __BIG_ENDIAN
-# define __PTHREAD_RWLOCK_SHARED_OFFSET        26
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET         27
-#else
-# define __PTHREAD_RWLOCK_SHARED_OFFSET        25
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET         24
-#endif
diff --git a/sysdeps/sparc/nptl/pthread-offsets.h b/sysdeps/sparc/nptl/pthread-offsets.h
deleted file mode 100644
index a9ce40d97f..0000000000
--- a/sysdeps/sparc/nptl/pthread-offsets.h
+++ /dev/null
@@ -1,33 +0,0 @@ 
-#include <bits/wordsize.h>
-
-#if __WORDSIZE == 64
-# define __PTHREAD_MUTEX_NUSERS_OFFSET   12
-# define __PTHREAD_MUTEX_KIND_OFFSET     16
-# define __PTHREAD_MUTEX_SPINS_OFFSET    20
-# define __PTHREAD_MUTEX_ELISION_OFFSET  22
-# define __PTHREAD_MUTEX_LIST_OFFSET     24
-#else
-# define __PTHREAD_MUTEX_NUSERS_OFFSET   16
-# define __PTHREAD_MUTEX_KIND_OFFSET     12
-# define __PTHREAD_MUTEX_SPINS_OFFSET    20
-# define __PTHREAD_MUTEX_ELISION_OFFSET  22
-# define __PTHREAD_MUTEX_LIST_OFFSET     20
-#endif
-
-#if __WORDSIZE == 64
-# define __PTHREAD_RWLOCK_READERS_OFFSET         0
-# define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-# define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-# define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-# define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     24
-# define __PTHREAD_RWLOCK_SHARED_OFFSET         28
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET          48
-#else
-# define __PTHREAD_RWLOCK_READERS_OFFSET         0
-# define __PTHREAD_RWLOCK_WRITERS_OFFSET         4
-# define __PTHREAD_RWLOCK_WRPHASE_FUTEX_OFFSET   8
-# define __PTHREAD_RWLOCK_WRITERS_FUTEX_OFFSET  12
-# define __PTHREAD_RWLOCK_CUR_WRITER_OFFSET     28
-# define __PTHREAD_RWLOCK_SHARED_OFFSET         26
-# define __PTHREAD_RWLOCK_FLAGS_OFFSET          27
-#endif