Merge "POSIX says <signal.h> gets you ucontext_t."

This commit is contained in:
Elliott Hughes 2014-09-15 17:17:37 +00:00 committed by Gerrit Code Review
commit 95b0c6a940
2 changed files with 7 additions and 8 deletions

View File

@ -48,6 +48,9 @@
# include <linux/signal.h>
#endif
#include <sys/ucontext.h>
#define __BIONIC_HAVE_UCONTEXT_T
__BEGIN_DECLS
typedef int sig_atomic_t;

View File

@ -68,11 +68,9 @@ typedef struct ucontext {
struct ucontext* uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
sigset_t uc_sigmask;
// Android has a wrong (smaller) sigset_t on ARM.
union {
sigset_t bionic;
uint32_t kernel[2];
} uc_sigmask;
uint32_t __padding_rt_sigset;
// The kernel adds extra padding after uc_sigmask to match glibc sigset_t on ARM.
char __padding[120];
unsigned long uc_regspace[128] __attribute__((__aligned__(8)));
@ -152,11 +150,9 @@ typedef struct ucontext {
struct ucontext* uc_link;
stack_t uc_stack;
mcontext_t uc_mcontext;
sigset_t uc_sigmask;
// Android has a wrong (smaller) sigset_t on x86.
union {
sigset_t bionic;
uint32_t kernel[2];
} uc_sigmask;
uint32_t __padding_rt_sigset;
struct _libc_fpstate __fpregs_mem;
} ucontext_t;