tile: update pthread_attr_t and struct siginfo names

This adds a tag to the pthread_attr_t underlying type so we can
forward-declare it, and removes the siginfo_t type, to match
changes in the main tree.
This commit is contained in:
Chris Metcalf 2012-05-11 14:42:46 -04:00
parent 538c451b2b
commit 87df4a4b09
3 changed files with 24 additions and 7 deletions

View File

@ -1,3 +1,11 @@
2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/tile/bits/siginfo.h: Don't name
siginfo_t struct. Add forward declaration of pthread_attr_t and
use it in sigevent.
* sysdeps/unix/sysv/linux/tile/nptl/bits/pthreadtypes.h: Name
pthread_attr_t union.
2012-05-12 Chris Metcalf <cmetcalf@tilera.com> 2012-05-12 Chris Metcalf <cmetcalf@tilera.com>
* sysdeps/tile/crti.S: New file, based on compiler output * sysdeps/tile/crti.S: New file, based on compiler output

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2011 Free Software Foundation, Inc. /* Copyright (C) 2011-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011. Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011.
@ -47,7 +47,7 @@ typedef union sigval
# define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 3) # define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 3)
# endif # endif
typedef struct siginfo typedef struct
{ {
int si_signo; /* Signal number. */ int si_signo; /* Signal number. */
int si_errno; /* If non-zero, an errno value associated with int si_errno; /* If non-zero, an errno value associated with
@ -275,6 +275,12 @@ enum
# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) # define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3)
# endif # endif
/* Forward declaration. */
# ifndef __have_pthread_attr_t
typedef union pthread_attr_t pthread_attr_t;
# define __have_pthread_attr_t 1
# endif
typedef struct sigevent typedef struct sigevent
{ {
sigval_t sigev_value; sigval_t sigev_value;
@ -292,7 +298,7 @@ typedef struct sigevent
struct struct
{ {
void (*_function) (sigval_t); /* Function to start. */ void (*_function) (sigval_t); /* Function to start. */
void *_attribute; /* Really pthread_attr_t. */ pthread_attr_t *_attribute; /* Thread attributes. */
} _sigev_thread; } _sigev_thread;
} _sigev_un; } _sigev_un;
} sigevent_t; } sigevent_t;

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2011 Free Software Foundation, Inc. /* Copyright (C) 2011-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Based on work contributed by Ulrich Drepper <drepper@redhat.com>, 2002. Based on work contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011. Contributed by Chris Metcalf <cmetcalf@tilera.com>, 2011.
@ -50,12 +50,15 @@
typedef unsigned long int pthread_t; typedef unsigned long int pthread_t;
typedef union union pthread_attr_t
{ {
char __size[__SIZEOF_PTHREAD_ATTR_T]; char __size[__SIZEOF_PTHREAD_ATTR_T];
long int __align; long int __align;
} pthread_attr_t; };
#ifndef __have_pthread_attr_t
typedef union pthread_attr_t pthread_attr_t;
# define __have_pthread_attr_t 1
#endif
#if __WORDSIZE == 64 #if __WORDSIZE == 64
typedef struct __pthread_internal_list typedef struct __pthread_internal_list