alpha: Update for pthread_attr_t typedef changes.

This commit is contained in:
Richard Henderson 2012-03-04 11:30:01 -08:00
parent 79c5cebc4a
commit 5414279644
3 changed files with 25 additions and 7 deletions

View File

@ -1,3 +1,12 @@
2012-03-04 Richard Henderson <rth@twiddle.net>
* sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Don't name the
siginfo_t struct. Add forward declaration of pthread_attr_t;
use it in sigevent.
* sysdeps/unix/sysv/linux/alpha/nptl/bits/pthreadtypes.h
(pthread_attr_t): Add union tag to pthread_attr_t; only define
typedef if not already defined.
2012-02-21 Richard Henderson <rth@twiddle.net>
* sysdeps/unix/sysv/linux/alpha/bits/epoll.h: New file.

View File

@ -1,5 +1,5 @@
/* siginfo_t, sigevent and constants. Linux/Alpha version.
Copyright (C) 1997-2002, 2003 Free Software Foundation, Inc.
Copyright (C) 1997-2012 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
@ -42,7 +42,7 @@ typedef union sigval
# define __SI_MAX_SIZE 128
# define __SI_PAD_SIZE ((__SI_MAX_SIZE / sizeof (int)) - 4)
typedef struct siginfo
typedef struct
{
int si_signo; /* Signal number. */
int si_errno; /* If non-zero, an errno value associated with
@ -260,6 +260,12 @@ enum
# define __SIGEV_MAX_SIZE 64
# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4)
/* 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
{
sigval_t sigev_value;
@ -277,7 +283,7 @@ typedef struct sigevent
struct
{
void (*_function) (sigval_t); /* Function to start. */
void *_attribute; /* Really pthread_attr_t. */
pthread_attr_t *_attribute; /* Thread attributes. */
} _sigev_thread;
} _sigev_un;
} sigevent_t;

View File

@ -1,5 +1,5 @@
/* Machine-specific pthread type layouts. Alpha version.
Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
Copyright (C) 2003-2012 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
@ -36,12 +36,15 @@
typedef unsigned long int pthread_t;
typedef union
union pthread_attr_t
{
char __size[__SIZEOF_PTHREAD_ATTR_T];
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
typedef struct __pthread_internal_list
{