about summary refs log tree commit diff
path: root/sysdeps/nptl/bits/thread-shared-types.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/nptl/bits/thread-shared-types.h')
-rw-r--r--sysdeps/nptl/bits/thread-shared-types.h156
1 files changed, 0 insertions, 156 deletions
diff --git a/sysdeps/nptl/bits/thread-shared-types.h b/sysdeps/nptl/bits/thread-shared-types.h
deleted file mode 100644
index d95ac9ac13..0000000000
--- a/sysdeps/nptl/bits/thread-shared-types.h
+++ /dev/null
@@ -1,156 +0,0 @@
-/* Common threading primitives definitions for both POSIX and C11.
-   Copyright (C) 2017 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
-   <http://www.gnu.org/licenses/>.  */
-
-#ifndef _THREAD_SHARED_TYPES_H
-#define _THREAD_SHARED_TYPES_H 1
-
-/* Arch-specific definitions.  Each architecture must define the following
-   macros to define the expected sizes of pthread data types:
-
-   __SIZEOF_PTHREAD_ATTR_T        - size of pthread_attr_t.
-   __SIZEOF_PTHREAD_MUTEX_T       - size of pthread_mutex_t.
-   __SIZEOF_PTHREAD_MUTEXATTR_T   - size of pthread_mutexattr_t.
-   __SIZEOF_PTHREAD_COND_T        - size of pthread_cond_t.
-   __SIZEOF_PTHREAD_CONDATTR_T    - size of pthread_condattr_t.
-   __SIZEOF_PTHREAD_RWLOCK_T      - size of pthread_rwlock_t.
-   __SIZEOF_PTHREAD_RWLOCKATTR_T  - size of pthread_rwlockattr_t.
-   __SIZEOF_PTHREAD_BARRIER_T     - size of pthread_barrier_t.
-   __SIZEOF_PTHREAD_BARRIERATTR_T - size of pthread_barrierattr_t.
-
-   Also, the following macros must be define for internal pthread_mutex_t
-   struct definitions (struct __pthread_mutex_s):
-
-   __PTHREAD_COMPAT_PADDING_MID   - any additional members after 'kind'
-				    and before '__spin' (for 64 bits) or
-				    '__nusers' (for 32 bits).
-   __PTHREAD_COMPAT_PADDING_END   - any additional members at the end of
-				    the internal structure.
-   __PTHREAD_MUTEX_LOCK_ELISION   - 1 if the architecture supports lock
-				    elision or 0 otherwise.
-
-   The additional macro defines any constraint for the lock alignment
-   inside the thread structures:
-
-   __LOCK_ALIGNMENT - for internal lock/futex usage.
-
-   Same idea but for the once locking primitive:
-
-   __ONCE_ALIGNMENT - for pthread_once_t/once_flag definition.
-
-   And finally the internal pthread_rwlock_t (struct __pthread_rwlock_arch_t)
-   must be defined.
- */
-#include <bits/pthreadtypes-arch.h>
-
-/* Common definition of pthread_mutex_t. */
-
-#if __WORDSIZE == 64
-typedef struct __pthread_internal_list
-{
-  struct __pthread_internal_list *__prev;
-  struct __pthread_internal_list *__next;
-} __pthread_list_t;
-#else
-typedef struct __pthread_internal_slist
-{
-  struct __pthread_internal_slist *__next;
-} __pthread_slist_t;
-#endif
-
-/* Lock elision support.  */
-#if __PTHREAD_MUTEX_LOCK_ELISION
-# if __WORDSIZE == 64
-#  define __PTHREAD_SPINS_DATA	\
-  short __spins;		\
-  short __elision;
-#  define __PTHREAD_SPINS             0, 0
-# else
-#  define __PTHREAD_SPINS_DATA	\
-  struct			\
-  {				\
-    short __espins;		\
-    short __eelision;		\
-  } __elision_data
-#  define __PTHREAD_SPINS         { 0, 0 }
-#  define __spins __elision_data.__espins
-#  define __elision __elision_data.__eelision
-# endif
-#else
-# define __PTHREAD_SPINS_DATA int __spins
-/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER.  */
-# define __PTHREAD_SPINS 0
-#endif
-
-struct __pthread_mutex_s
-{
-  int __lock __LOCK_ALIGNMENT;
-  unsigned int __count;
-  int __owner;
-#if __WORDSIZE == 64
-  unsigned int __nusers;
-#endif
-  /* KIND must stay at this position in the structure to maintain
-     binary compatibility with static initializers.  */
-  int __kind;
-  __PTHREAD_COMPAT_PADDING_MID;
-#if __WORDSIZE == 64
-  __PTHREAD_SPINS_DATA;
-  __pthread_list_t __list;
-# define __PTHREAD_MUTEX_HAVE_PREV      1
-#else
-  unsigned int __nusers;
-  __extension__ union
-  {
-    __PTHREAD_SPINS_DATA;
-    __pthread_slist_t __list;
-  }
-#endif
-  __PTHREAD_COMPAT_PADDING_END;
-};
-
-
-/* Common definition of pthread_cond_t. */
-
-struct __pthread_cond_s
-{
-  __extension__ union
-  {
-    __extension__ unsigned long long int __wseq;
-    struct
-    {
-      unsigned int __low;
-      unsigned int __high;
-    } __wseq32;
-  };
-  __extension__ union
-  {
-    __extension__ unsigned long long int __g1_start;
-    struct
-    {
-      unsigned int __low;
-      unsigned int __high;
-    } __g1_start32;
-  };
-  unsigned int __g_refs[2] __LOCK_ALIGNMENT;
-  unsigned int __g_size[2];
-  unsigned int __g1_orig_size;
-  unsigned int __wrefs;
-  unsigned int __g_signals[2];
-};
-
-#endif /* _THREAD_SHARED_TYPES_H  */