master
  1#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
  2 || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
  3
  4#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
  5#define MINSIGSTKSZ 2048
  6#define SIGSTKSZ 8192
  7#endif
  8
  9#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
 10typedef unsigned long long greg_t, gregset_t[32];
 11
 12typedef struct {
 13	union {
 14		double fp_dregs[32];
 15		struct {
 16			float _fp_fregs;
 17			unsigned _fp_pad;
 18		} fp_fregs[32];
 19	} fp_r;
 20} fpregset_t;
 21
 22struct sigcontext {
 23	unsigned long long sc_regs[32];
 24	unsigned long long sc_fpregs[32];
 25	unsigned long long sc_mdhi;
 26	unsigned long long sc_hi1;
 27	unsigned long long sc_hi2;
 28	unsigned long long sc_hi3;
 29	unsigned long long sc_mdlo;
 30	unsigned long long sc_lo1;
 31	unsigned long long sc_lo2;
 32	unsigned long long sc_lo3;
 33	unsigned long long sc_pc;
 34	unsigned int sc_fpc_csr;
 35	unsigned int sc_used_math;
 36	unsigned int sc_dsp;
 37	unsigned int sc_reserved;
 38};
 39
 40typedef struct {
 41	gregset_t gregs;
 42	fpregset_t fpregs;
 43	greg_t mdhi;
 44	greg_t hi1;
 45	greg_t hi2;
 46	greg_t hi3;
 47	greg_t mdlo;
 48	greg_t lo1;
 49	greg_t lo2;
 50	greg_t lo3;
 51	greg_t pc;
 52	unsigned int fpc_csr;
 53	unsigned int used_math;
 54	unsigned int dsp;
 55	unsigned int reserved;
 56} mcontext_t;
 57
 58#else
 59typedef struct {
 60	unsigned long long __mc1[32];
 61	double __mc2[32];
 62	unsigned long long __mc3[9];
 63	unsigned __mc4[4];
 64} mcontext_t;
 65#endif
 66
 67struct sigaltstack {
 68	void *ss_sp;
 69	size_t ss_size;
 70	int ss_flags;
 71};
 72
 73typedef struct __ucontext {
 74	unsigned long uc_flags;
 75	struct __ucontext *uc_link;
 76	stack_t uc_stack;
 77	mcontext_t uc_mcontext;
 78	sigset_t uc_sigmask;
 79} ucontext_t;
 80
 81#define SA_NOCLDSTOP  1
 82#define SA_NOCLDWAIT  0x10000
 83#define SA_SIGINFO    8
 84#define SA_ONSTACK    0x08000000
 85#define SA_RESTART    0x10000000
 86#define SA_NODEFER    0x40000000
 87#define SA_RESETHAND  0x80000000
 88
 89#undef SIG_BLOCK
 90#undef SIG_UNBLOCK
 91#undef SIG_SETMASK
 92#define SIG_BLOCK     1
 93#define SIG_UNBLOCK   2
 94#define SIG_SETMASK   3
 95
 96#undef SI_ASYNCIO
 97#undef SI_MESGQ
 98#undef SI_TIMER
 99#define SI_ASYNCIO (-2)
100#define SI_MESGQ (-4)
101#define SI_TIMER (-3)
102
103#define __SI_SWAP_ERRNO_CODE
104
105#endif
106
107#define SIGHUP    1
108#define SIGINT    2
109#define SIGQUIT   3
110#define SIGILL    4
111#define SIGTRAP   5
112#define SIGABRT   6
113#define SIGIOT    SIGABRT
114#define SIGEMT    7
115#define SIGFPE    8
116#define SIGKILL   9
117#define SIGBUS    10
118#define SIGSEGV   11
119#define SIGSYS    12
120#define SIGPIPE   13
121#define SIGALRM   14
122#define SIGTERM   15
123#define SIGUSR1   16
124#define SIGUSR2   17
125#define SIGCHLD   18
126#define SIGPWR    19
127#define SIGWINCH  20
128#define SIGURG    21
129#define SIGIO     22
130#define SIGPOLL   SIGIO
131#define SIGSTOP   23
132#define SIGTSTP   24
133#define SIGCONT   25
134#define SIGTTIN   26
135#define SIGTTOU   27
136#define SIGVTALRM 28
137#define SIGPROF   29
138#define SIGXCPU   30
139#define SIGXFSZ   31
140#define SIGUNUSED SIGSYS
141
142#define _NSIG 128