Move __PTHREAD_SPINS definition to architecture specific header

This patch moves the __PTHREAD_SPINS definition to arch specific header
since pthread_mutex_t layout is also arch specific.  This leads to no
need to defining __PTHREAD_MUTEX_HAVE_ELISION and thus removing of the
undefined compiler warning.
This commit is contained in:
Adhemerval Zanella 2014-03-26 13:48:00 -05:00
parent de21c33c06
commit 01f8eac224
17 changed files with 79 additions and 13 deletions

View File

@ -1,3 +1,35 @@
2014-04-09 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
* nptl/sysdeps/pthread/pthread.h (__PTHREAD_MUTEX_HAVE_ELISION):
Remove macro usage.
(__PTHREAD_SPINS): Move definition to ...
* nptl/sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h
(__PTHREAD_SPINS): ... here.
* nptl/sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* nptl/sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* nptl/sysdeps/unix/sysv/linux/sparc/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* nptl/sysdeps/unix/sysv/linux/x86/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/aarch64/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/arm/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/ia64/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/m68k/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/microblaze/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/mips/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
* sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Likewise.
2014-04-09 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
* sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.

View File

@ -82,15 +82,6 @@ enum
#endif
/* Mutex initializers. */
#if __PTHREAD_MUTEX_HAVE_ELISION == 1 /* 64bit layout. */
#define __PTHREAD_SPINS 0, 0
#elif __PTHREAD_MUTEX_HAVE_ELISION == 2 /* 32bit layout. */
#define __PTHREAD_SPINS { 0, 0 }
#else
#define __PTHREAD_SPINS 0
#endif
#ifdef __PTHREAD_MUTEX_HAVE_PREV
# define PTHREAD_MUTEX_INITIALIZER \
{ { 0, 0, 0, 0, 0, __PTHREAD_SPINS, { 0, 0 } } }

View File

@ -106,6 +106,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -20,8 +20,6 @@
#include <bits/wordsize.h>
# define __PTHREAD_MUTEX_HAVE_ELISION 0
#if __WORDSIZE == 64
# define __SIZEOF_PTHREAD_ATTR_T 56
# define __SIZEOF_PTHREAD_MUTEX_T 40
@ -107,6 +105,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -77,6 +77,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -106,6 +106,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -105,7 +105,8 @@ typedef union
short __elision;
__pthread_list_t __list;
# define __PTHREAD_MUTEX_HAVE_PREV 1
# define __PTHREAD_MUTEX_HAVE_ELISION 1
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
# define __PTHREAD_SPINS 0, 0
#else
unsigned int __nusers;
__extension__ union
@ -116,7 +117,7 @@ typedef union
short __elision;
# define __spins d.__espins
# define __elision d.__elision
# define __PTHREAD_MUTEX_HAVE_ELISION 2
# define __PTHREAD_SPINS { 0, 0 }
} d;
__pthread_slist_t __list;
};

View File

@ -1,3 +1,8 @@
2014-04-09 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
* ports/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h
(__PTHREAD_SPIN): Moved defintion from pthread.h.
2014-03-18 Roland McGrath <roland@hack.frob.com>
* sysdeps/hppa/dl-fptr.c: Include <dl-unmap-segments.h>.

View File

@ -94,6 +94,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -74,6 +74,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -73,6 +73,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -77,6 +77,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -74,6 +74,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -77,6 +77,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -76,6 +76,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -106,6 +106,9 @@ typedef union
long int __align;
} pthread_mutex_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
typedef union
{
char __size[__SIZEOF_PTHREAD_MUTEXATTR_T];

View File

@ -112,6 +112,9 @@ typedef union
int __align;
} pthread_mutexattr_t;
/* Mutex __spins initializer used by PTHREAD_MUTEX_INITIALIZER. */
#define __PTHREAD_SPINS 0
/* Data structure for conditional variable handling. The structure of
the attribute type is not exposed on purpose. */